');this.wrapperOuter=this.$elem.find(".owl-wrapper-outer");this.$elem.css("display","block")},
baseClass:function(){var a=this.$elem.hasClass(this.options.baseClass),b=this.$elem.hasClass(this.options.theme);a||this.$elem.addClass(this.options.baseClass);b||this.$elem.addClass(this.options.theme)},updateItems:function(){var a,b;if(!1===this.options.responsive)return!1;if(!0===this.options.singleItem)return this.options.items=this.orignalItems=1,this.options.itemsCustom=!1,this.options.itemsDesktop=!1,this.options.itemsDesktopSmall=!1,this.options.itemsTablet=!1,this.options.itemsTabletSmall=!1,this.options.itemsMobile=!1;a=f(this.options.responsiveBaseWidth).width();a>(this.options.itemsDesktop[0]||this.orignalItems)&&(this.options.items=this.orignalItems);if(!1!==this.options.itemsCustom)for(this.options.itemsCustom.sort(function(a,b){return a[0]-b[0]}),b=0;b
this.itemsAmount&&
!0===this.options.itemsScaleUp&&(this.options.items=this.itemsAmount)},response:function(){var a=this,b,e;if(!0!==a.options.responsive)return!1;e=f(g).width();a.resizer=function(){f(g).width()!==e&&(!1!==a.options.autoPlay&&g.clearInterval(a.autoPlayInterval),g.clearTimeout(b),b=g.setTimeout(function(){e=f(g).width();a.updateVars()},a.options.responsiveRefreshRate))};f(g).resize(a.resizer)},updatePosition:function(){this.jumpTo(this.currentItem);!1!==this.options.autoPlay&&this.checkAp()},appendItemsSizes:function(){var a=this,b=0,e=a.itemsAmount-a.options.items;a.$owlItems.each(function(c){var d=f(this);d.css({width:a.itemWidth}).data("owl-item",Number(c));if(0===c%a.options.items||c===e)c>e||(b+=1);d.data("owl-roundPages",b)})},appendWrapperSizes:function(){this.$owlWrapper.css({width:this.$owlItems.length*this.itemWidth*2,left:0});this.appendItemsSizes()},calculateAll:function(){this.calculateWidth();this.appendWrapperSizes();this.loops();this.max()},calculateWidth:function(){this.itemWidth=Math.round(this.$elem.width()/
this.options.items)},max:function(){var a=-1*(this.itemsAmount*this.itemWidth-this.options.items*this.itemWidth);this.options.items>this.itemsAmount?this.maximumPixels=a=this.maximumItem=0:(this.maximumItem=this.itemsAmount-this.options.items,this.maximumPixels=a);return a},min:function(){return 0},loops:function(){var a=0,b=0,e,c;this.positionsInArray=[0];this.pagesInArray=[];for(e=0;e').toggleClass("clickable",!this.browser.isTouch).appendTo(this.$elem);!0===this.options.pagination&&this.buildPagination();!0===this.options.navigation&&this.buildButtons()},buildButtons:function(){var a=this,b=f('');a.owlControls.append(b);a.buttonPrev=f("",{"class":"owl-prev",html:a.options.navigationText[0]||""});a.buttonNext=f("",{"class":"owl-next",html:a.options.navigationText[1]||""});b.append(a.buttonPrev).append(a.buttonNext);b.on("touchstart.owlControls mousedown.owlControls",'div[class^="owl"]',function(a){a.preventDefault()});b.on("touchend.owlControls mouseup.owlControls",'div[class^="owl"]',function(b){b.preventDefault();f(this).hasClass("owl-next")?a.next():a.prev()})},buildPagination:function(){var a=this;a.paginationWrapper=f('');a.owlControls.append(a.paginationWrapper);a.paginationWrapper.on("touchend.owlControls mouseup.owlControls",".owl-page",function(b){b.preventDefault();Number(f(this).data("owl-page"))!==a.currentItem&&a.goTo(Number(f(this).data("owl-page")),!0)})},updatePagination:function(){var a,b,e,c,d,g;if(!1===this.options.pagination)return!1;this.paginationWrapper.html("");a=0;b=this.itemsAmount-this.itemsAmount%this.options.items;for(c=0;c",{"class":"owl-page"}),g=f("",{text:!0===this.options.paginationNumbers?a:"","class":!0===this.options.paginationNumbers?"owl-numbers":""}),d.append(g),d.data("owl-page",b===c?e:c),d.data("owl-roundPages",a),this.paginationWrapper.append(d));this.checkPagination()},checkPagination:function(){var a=this;if(!1===a.options.pagination)return!1;a.paginationWrapper.find(".owl-page").each(function(){f(this).data("owl-roundPages")===f(a.$owlItems[a.currentItem]).data("owl-roundPages")&&(a.paginationWrapper.find(".owl-page").removeClass("active"),f(this).addClass("active"))})},checkNavigation:function(){if(!1===this.options.navigation)return!1;!1===this.options.rewindNav&&(0===this.currentItem&&0===this.maximumItem?(this.buttonPrev.addClass("disabled"),this.buttonNext.addClass("disabled")):0===this.currentItem&&0!==this.maximumItem?(this.buttonPrev.addClass("disabled"),this.buttonNext.removeClass("disabled")):this.currentItem===this.maximumItem?(this.buttonPrev.removeClass("disabled"),this.buttonNext.addClass("disabled")):0!==this.currentItem&&this.currentItem!==this.maximumItem&&(this.buttonPrev.removeClass("disabled"),this.buttonNext.removeClass("disabled")))},updateControls:function(){this.updatePagination();this.checkNavigation();this.owlControls&&(this.options.items>=this.itemsAmount?this.owlControls.hide():this.owlControls.show())},destroyControls:function(){this.owlControls&&this.owlControls.remove()},next:function(a){if(this.isTransition)return!1;
this.currentItem+=!0===this.options.scrollPerPage?this.options.items:1;if(this.currentItem>this.maximumItem+(!0===this.options.scrollPerPage?this.options.items-1:0))if(!0===this.options.rewindNav)this.currentItem=0,a="rewind";else return this.currentItem=this.maximumItem,!1;this.goTo(this.currentItem,a)},prev:function(a){if(this.isTransition)return!1;this.currentItem=!0===this.options.scrollPerPage&&0this.currentItem)if(!0===this.options.rewindNav)this.currentItem=this.maximumItem,a="rewind";else return this.currentItem=0,!1;this.goTo(this.currentItem,a)},goTo:function(a,b,e){var c=this;if(c.isTransition)return!1;"function"===typeof c.options.beforeMove&&c.options.beforeMove.apply(this,[c.$elem]);a>=c.maximumItem?a=c.maximumItem:0>=a&&(a=0);c.currentItem=c.owl.currentItem=a;if(!1!==c.options.transitionStyle&&"drag"!==e&&1===c.options.items&&!0===c.browser.support3d)return c.swapSpeed(0),
!0===c.browser.support3d?c.transition3d(c.positionsInArray[a]):c.css2slide(c.positionsInArray[a],1),c.afterGo(),c.singleItemTransition(),!1;a=c.positionsInArray[a];!0===c.browser.support3d?(c.isCss3Finish=!1,!0===b?(c.swapSpeed("paginationSpeed"),g.setTimeout(function(){c.isCss3Finish=!0},c.options.paginationSpeed)):"rewind"===b?(c.swapSpeed(c.options.rewindSpeed),g.setTimeout(function(){c.isCss3Finish=!0},c.options.rewindSpeed)):(c.swapSpeed("slideSpeed"),g.setTimeout(function(){c.isCss3Finish=!0},
c.options.slideSpeed)),c.transition3d(a)):!0===b?c.css2slide(a,c.options.paginationSpeed):"rewind"===b?c.css2slide(a,c.options.rewindSpeed):c.css2slide(a,c.options.slideSpeed);c.afterGo()},jumpTo:function(a){"function"===typeof this.options.beforeMove&&this.options.beforeMove.apply(this,[this.$elem]);a>=this.maximumItem||-1===a?a=this.maximumItem:0>=a&&(a=0);this.swapSpeed(0);!0===this.browser.support3d?this.transition3d(this.positionsInArray[a]):this.css2slide(this.positionsInArray[a],1);this.currentItem=this.owl.currentItem=a;this.afterGo()},afterGo:function(){this.prevArr.push(this.currentItem);this.prevItem=this.owl.prevItem=this.prevArr[this.prevArr.length-2];this.prevArr.shift(0);this.prevItem!==this.currentItem&&(this.checkPagination(),this.checkNavigation(),this.eachMoveUpdate(),!1!==this.options.autoPlay&&this.checkAp());"function"===typeof this.options.afterMove&&this.prevItem!==this.currentItem&&this.options.afterMove.apply(this,[this.$elem])},stop:function(){this.apStatus="stop";g.clearInterval(this.autoPlayInterval)},
checkAp:function(){"stop"!==this.apStatus&&this.play()},play:function(){var a=this;a.apStatus="play";if(!1===a.options.autoPlay)return!1;g.clearInterval(a.autoPlayInterval);a.autoPlayInterval=g.setInterval(function(){a.next(!0)},a.options.autoPlay)},swapSpeed:function(a){"slideSpeed"===a?this.$owlWrapper.css(this.addCssSpeed(this.options.slideSpeed)):"paginationSpeed"===a?this.$owlWrapper.css(this.addCssSpeed(this.options.paginationSpeed)):"string"!==typeof a&&this.$owlWrapper.css(this.addCssSpeed(a))},
addCssSpeed:function(a){return{"-webkit-transition":"all "+a+"ms ease","-moz-transition":"all "+a+"ms ease","-o-transition":"all "+a+"ms ease",transition:"all "+a+"ms ease"}},removeTransition:function(){return{"-webkit-transition":"","-moz-transition":"","-o-transition":"",transition:""}},doTranslate:function(a){return{"-webkit-transform":"translate3d("+a+"px, 0px, 0px)","-moz-transform":"translate3d("+a+"px, 0px, 0px)","-o-transform":"translate3d("+a+"px, 0px, 0px)","-ms-transform":"translate3d("+
a+"px, 0px, 0px)",transform:"translate3d("+a+"px, 0px,0px)"}},transition3d:function(a){this.$owlWrapper.css(this.doTranslate(a))},css2move:function(a){this.$owlWrapper.css({left:a})},css2slide:function(a,b){var e=this;e.isCssFinish=!1;e.$owlWrapper.stop(!0,!0).animate({left:a},{duration:b||e.options.slideSpeed,complete:function(){e.isCssFinish=!0}})},checkBrowser:function(){var a=k.createElement("div");a.style.cssText=" -moz-transform:translate3d(0px, 0px, 0px); -ms-transform:translate3d(0px, 0px, 0px); -o-transform:translate3d(0px, 0px, 0px); -webkit-transform:translate3d(0px, 0px, 0px); transform:translate3d(0px, 0px, 0px)";
a=a.style.cssText.match(/translate3d\(0px, 0px, 0px\)/g);this.browser={support3d:null!==a&&1===a.length,isTouch:"ontouchstart"in g||g.navigator.msMaxTouchPoints}},moveEvents:function(){if(!1!==this.options.mouseDrag||!1!==this.options.touchDrag)this.gestures(),this.disabledEvents()},eventTypes:function(){var a=["s","e","x"];this.ev_types={};!0===this.options.mouseDrag&&!0===this.options.touchDrag?a=["touchstart.owl mousedown.owl","touchmove.owl mousemove.owl","touchend.owl touchcancel.owl mouseup.owl"]:
!1===this.options.mouseDrag&&!0===this.options.touchDrag?a=["touchstart.owl","touchmove.owl","touchend.owl touchcancel.owl"]:!0===this.options.mouseDrag&&!1===this.options.touchDrag&&(a=["mousedown.owl","mousemove.owl","mouseup.owl"]);this.ev_types.start=a[0];this.ev_types.move=a[1];this.ev_types.end=a[2]},disabledEvents:function(){this.$elem.on("dragstart.owl",function(a){a.preventDefault()});this.$elem.on("mousedown.disableTextSelect",function(a){return f(a.target).is("input, textarea, select, option")})},
gestures:function(){function a(a){if(void 0!==a.touches)return{x:a.touches[0].pageX,y:a.touches[0].pageY};if(void 0===a.touches){if(void 0!==a.pageX)return{x:a.pageX,y:a.pageY};if(void 0===a.pageX)return{x:a.clientX,y:a.clientY}}}function b(a){"on"===a?(f(k).on(d.ev_types.move,e),f(k).on(d.ev_types.end,c)):"off"===a&&(f(k).off(d.ev_types.move),f(k).off(d.ev_types.end))}function e(b){b=b.originalEvent||b||g.event;d.newPosX=a(b).x-h.offsetX;d.newPosY=a(b).y-h.offsetY;d.newRelativeX=d.newPosX-h.relativePos;
"function"===typeof d.options.startDragging&&!0!==h.dragging&&0!==d.newRelativeX&&(h.dragging=!0,d.options.startDragging.apply(d,[d.$elem]));(8d.newRelativeX)&&!0===d.browser.isTouch&&(void 0!==b.preventDefault?b.preventDefault():b.returnValue=!1,h.sliding=!0);(10d.newPosY)&&!1===h.sliding&&f(k).off("touchmove.owl");d.newPosX=Math.max(Math.min(d.newPosX,d.newRelativeX/5),d.maximumPixels+d.newRelativeX/5);!0===d.browser.support3d?d.transition3d(d.newPosX):d.css2move(d.newPosX)}
function c(a){a=a.originalEvent||a||g.event;var c;a.target=a.target||a.srcElement;h.dragging=!1;!0!==d.browser.isTouch&&d.$owlWrapper.removeClass("grabbing");d.dragDirection=0>d.newRelativeX?d.owl.dragDirection="left":d.owl.dragDirection="right";0!==d.newRelativeX&&(c=d.getNewPosition(),d.goTo(c,!1,"drag"),h.targetElement===a.target&&!0!==d.browser.isTouch&&(f(a.target).on("click.disable",function(a){a.stopImmediatePropagation();a.stopPropagation();a.preventDefault();f(a.target).off("click.disable")}),
a=f._data(a.target,"events").click,c=a.pop(),a.splice(0,0,c)));b("off")}var d=this,h={offsetX:0,offsetY:0,baseElWidth:0,relativePos:0,position:null,minSwipe:null,maxSwipe:null,sliding:null,dargging:null,targetElement:null};d.isCssFinish=!0;d.$elem.on(d.ev_types.start,".owl-wrapper",function(c){c=c.originalEvent||c||g.event;var e;if(3===c.which)return!1;if(!(d.itemsAmount<=d.options.items)){if(!1===d.isCssFinish&&!d.options.dragBeforeAnimFinish||!1===d.isCss3Finish&&!d.options.dragBeforeAnimFinish)return!1;
!1!==d.options.autoPlay&&g.clearInterval(d.autoPlayInterval);!0===d.browser.isTouch||d.$owlWrapper.hasClass("grabbing")||d.$owlWrapper.addClass("grabbing");d.newPosX=0;d.newRelativeX=0;f(this).css(d.removeTransition());e=f(this).position();h.relativePos=e.left;h.offsetX=a(c).x-e.left;h.offsetY=a(c).y-e.top;b("on");h.sliding=!1;h.targetElement=c.target||c.srcElement}})},getNewPosition:function(){var a=this.closestItem();a>this.maximumItem?a=this.currentItem=this.maximumItem:0<=this.newPosX&&(this.currentItem=a=0);return a},closestItem:function(){var a=this,b=!0===a.options.scrollPerPage?a.pagesInArray:a.positionsInArray,e=a.newPosX,c=null;f.each(b,function(d,g){e-a.itemWidth/20>b[d+1]&&e-a.itemWidth/20(b[d+1]||b[d]-a.itemWidth)&&"right"===a.moveDirection()&&(!0===a.options.scrollPerPage?(c=b[d+1]||b[b.length-1],a.currentItem=f.inArray(c,a.positionsInArray)):
(c=b[d+1],a.currentItem=d+1))});return a.currentItem},moveDirection:function(){var a;0>this.newRelativeX?(a="right",this.playDirection="next"):(a="left",this.playDirection="prev");return a},customEvents:function(){var a=this;a.$elem.on("owl.next",function(){a.next()});a.$elem.on("owl.prev",function(){a.prev()});a.$elem.on("owl.play",function(b,e){a.options.autoPlay=e;a.play();a.hoverStatus="play"});a.$elem.on("owl.stop",function(){a.stop();a.hoverStatus="stop"});a.$elem.on("owl.goTo",function(b,e){a.goTo(e)});a.$elem.on("owl.jumpTo",function(b,e){a.jumpTo(e)})},stopOnHover:function(){var a=this;!0===a.options.stopOnHover&&!0!==a.browser.isTouch&&!1!==a.options.autoPlay&&(a.$elem.on("mouseover",function(){a.stop()}),a.$elem.on("mouseout",function(){"stop"!==a.hoverStatus&&a.play()}))},lazyLoad:function(){var a,b,e,c,d;if(!1===this.options.lazyLoad)return!1;for(a=0;a=this.currentItem:!0)&&e=f?g.setTimeout(c,100):e()}var d=this,f=0,k;"DIV"===b.prop("tagName")?(b.css("background-image","url("+b.data("src")+")"),k=!0):b[0].src=b.data("src");c()},autoHeight:function(){function a(){var a=f(e.$owlItems[e.currentItem]).height();e.wrapperOuter.css("height",a+"px");e.wrapperOuter.hasClass("autoHeight")||g.setTimeout(function(){e.wrapperOuter.addClass("autoHeight")},0)}function b(){d+=1;e.completeImg(c.get(0))?a():100>=d?g.setTimeout(b,
100):e.wrapperOuter.css("height","")}var e=this,c=f(e.$owlItems[e.currentItem]).find("img"),d;void 0!==c.get(0)?(d=0,b()):a()},completeImg:function(a){return!a.complete||"undefined"!==typeof a.naturalWidth&&0===a.naturalWidth?!1:!0},onVisibleItems:function(){var a;!0===this.options.addClassActive&&this.$owlItems.removeClass("active");this.visibleItems=[];for(a=this.currentItem;a=this.$userItems.length||-1===e?this.$userItems.eq(-1).after(a):this.$userItems.eq(e).before(a);this.setVars()},removeItem:function(a){if(0===this.$elem.children().length)return!1;a=void 0===a||-1===a?-1:a;this.unWrap();this.$userItems.eq(a).remove();this.setVars()}};f.fn.owlCarousel=function(a){return this.each(function(){if(!0===f(this).data("owl-init"))return!1;f(this).data("owl-init",!0);var b=Object.create(l);b.init(a,this);f.data(this,"owlCarousel",b)})};f.fn.owlCarousel.options={items:5,itemsCustom:!1,itemsDesktop:[1199,4],itemsDesktopSmall:[979,3],itemsTablet:[768,2],itemsTabletSmall:!1,itemsMobile:[479,1],singleItem:!1,itemsScaleUp:!1,slideSpeed:200,paginationSpeed:800,rewindSpeed:1E3,autoPlay:!1,stopOnHover:!1,navigation:!1,navigationText:["prev","next"],rewindNav:!0,scrollPerPage:!1,pagination:!0,paginationNumbers:!1,
responsive:!0,responsiveRefreshRate:200,responsiveBaseWidth:g,baseClass:"owl-carousel",theme:"owl-theme",lazyLoad:!1,lazyFollow:!0,lazyEffect:"fade",autoHeight:!1,jsonPath:!1,jsonSuccess:!1,dragBeforeAnimFinish:!0,mouseDrag:!0,touchDrag:!0,addClassActive:!1,transitionStyle:!1,beforeUpdate:!1,afterUpdate:!1,beforeInit:!1,afterInit:!1,beforeMove:!1,afterMove:!1,afterAction:!1,startDragging:!1,afterLazyLoad:!1}})(jQuery,window,document);
!function(a){return"function"==typeof define&&define.amd?define(["jquery"],function(b){return a(b,window,document)}):a(jQuery,window,document)}(function(a,b,c){"use strict";var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H;z={paneClass:"nano-pane",sliderClass:"nano-slider",contentClass:"nano-content",iOSNativeScrolling:!1,preventPageScrolling:!1,disableResize:!1,alwaysVisible:!1,flashDelay:1500,sliderMinHeight:20,sliderMaxHeight:null,documentContext:null,windowContext:null},u="scrollbar",t="scroll",l="mousedown",m="mouseenter",n="mousemove",p="mousewheel",o="mouseup",s="resize",h="drag",i="enter",w="up",r="panedown",f="DOMMouseScroll",g="down",x="wheel",j="keydown",k="keyup",v="touchmove",d="Microsoft Internet Explorer"===b.navigator.appName&&/msie 7./i.test(b.navigator.appVersion)&&b.ActiveXObject,e=null,D=b.requestAnimationFrame,y=b.cancelAnimationFrame,F=c.createElement("div").style,H=function(){var a,b,c,d,e,f;for(d=["t","webkitT","MozT","msT","OT"],a=e=0,f=d.length;f>e;a=++e)if(c=d[a],b=d[a]+"ransform",b in F)return d[a].substr(0,d[a].length-1);return!1}(),G=function(a){return H===!1?!1:""===H?a:H+a.charAt(0).toUpperCase()+a.substr(1)},E=G("transform"),B=E!==!1,A=function(){var a,b,d;return a=c.createElement("div"),b=a.style,b.position="absolute",b.width="100px",b.height="100px",b.overflow=t,b.top="-9999px",c.body.appendChild(a),d=a.offsetWidth-a.clientWidth,c.body.removeChild(a),d},C=function(){var a,c,d;return c=b.navigator.userAgent,(a=/(?=.+Mac OS X)(?=.+Firefox)/.test(c))?(d=/Firefox\/\d{2}\./.exec(c),d&&(d=d[0].replace(/\D+/g,"")),a&&+d>23):!1},q=function(){function j(d,f){this.el=d,this.options=f,e||(e=A()),this.$el=a(this.el),this.doc=a(this.options.documentContext||c),this.win=a(this.options.windowContext||b),this.body=this.doc.find("body"),this.$content=this.$el.children("."+f.contentClass),this.$content.attr("tabindex",this.options.tabIndex||0),this.content=this.$content[0],this.previousPosition=0,this.options.iOSNativeScrolling&&null!=this.el.style.WebkitOverflowScrolling?this.nativeScrolling():this.generate(),this.createEvents(),this.addEvents(),this.reset()}return j.prototype.preventScrolling=function(a,b){if(this.isActive)if(a.type===f)(b===g&&a.originalEvent.detail>0||b===w&&a.originalEvent.detail<0)&&a.preventDefault();else if(a.type===p){if(!a.originalEvent||!a.originalEvent.wheelDelta)return;(b===g&&a.originalEvent.wheelDelta<0||b===w&&a.originalEvent.wheelDelta>0)&&a.preventDefault()}},j.prototype.nativeScrolling=function(){this.$content.css({WebkitOverflowScrolling:"touch"}),this.iOSNativeScrolling=!0,this.isActive=!0},j.prototype.updateScrollValues=function(){var a,b;a=this.content,this.maxScrollTop=a.scrollHeight-a.clientHeight,this.prevScrollTop=this.contentScrollTop||0,this.contentScrollTop=a.scrollTop,b=this.contentScrollTop>this.previousPosition?"down":this.contentScrollTop=a.maxScrollTop&&a.prevScrollTop!==a.maxScrollTop?a.$el.trigger("scrollend"):0===a.contentScrollTop&&0!==a.prevScrollTop&&a.$el.trigger("scrolltop"),!1}}(this),up:function(a){return function(){return a.isBeingDragged=!1,a.pane.removeClass("active"),a.doc.unbind(n,a.events[h]).unbind(o,a.events[w]),a.body.unbind(m,a.events[i]),!1}}(this),resize:function(a){return function(){a.reset()}}(this),panedown:function(a){return function(b){return a.sliderY=(b.offsetY||b.originalEvent.layerY)-.5*a.sliderHeight,a.scroll(),a.events.down(b),!1}}(this),scroll:function(a){return function(b){a.updateScrollValues(),a.isBeingDragged||(a.iOSNativeScrolling||(a.sliderY=a.sliderTop,a.setOnScrollStyles()),null!=b&&(a.contentScrollTop>=a.maxScrollTop?(a.options.preventPageScrolling&&a.preventScrolling(b,g),a.prevScrollTop!==a.maxScrollTop&&a.$el.trigger("scrollend")):0===a.contentScrollTop&&(a.options.preventPageScrolling&&a.preventScrolling(b,w),0!==a.prevScrollTop&&a.$el.trigger("scrolltop"))))}}(this),wheel:function(a){return function(b){var c;if(null!=b)return c=b.delta||b.wheelDelta||b.originalEvent&&b.originalEvent.wheelDelta||-b.detail||b.originalEvent&&-b.originalEvent.detail,c&&(a.sliderY+=-c/3),a.scroll(),!1}}(this),enter:function(a){return function(b){var c;if(a.isBeingDragged)return 1!==(b.buttons||b.which)?(c=a.events)[w].apply(c,arguments):void 0}}(this)}},j.prototype.addEvents=function(){var a;this.removeEvents(),a=this.events,this.options.disableResize||this.win.bind(s,a[s]),this.iOSNativeScrolling||(this.slider.bind(l,a[g]),this.pane.bind(l,a[r]).bind(""+p+" "+f,a[x])),this.$content.bind(""+t+" "+p+" "+f+" "+v,a[t])},j.prototype.removeEvents=function(){var a;a=this.events,this.win.unbind(s,a[s]),this.iOSNativeScrolling||(this.slider.unbind(),this.pane.unbind()),this.$content.unbind(""+t+" "+p+" "+f+" "+v,a[t])},j.prototype.generate=function(){var a,c,d,f,g,h,i;return f=this.options,h=f.paneClass,i=f.sliderClass,a=f.contentClass,(g=this.$el.children("."+h)).length||g.children("."+i).length||this.$el.append(''),this.pane=this.$el.children("."+h),this.slider=this.pane.find("."+i),0===e&&C()?(d=b.getComputedStyle(this.content,null).getPropertyValue("padding-right").replace(/[^0-9.]+/g,""),c={right:-14,paddingRight:+d+14}):e&&(c={right:-e},this.$el.addClass("has-scrollbar")),null!=c&&this.$content.css(c),this},j.prototype.restore=function(){this.stopped=!1,this.iOSNativeScrolling||this.pane.show(),this.addEvents()},j.prototype.reset=function(){var a,b,c,f,g,h,i,j,k,l,m,n;return this.iOSNativeScrolling?void(this.contentHeight=this.content.scrollHeight):(this.$el.find("."+this.options.paneClass).length||this.generate().stop(),this.stopped&&this.restore(),a=this.content,f=a.style,g=f.overflowY,d&&this.$content.css({height:this.$content.height()}),b=a.scrollHeight+e,l=parseInt(this.$el.css("max-height"),10),l>0&&(this.$el.height(""),this.$el.height(a.scrollHeight>l?l:a.scrollHeight)),i=this.pane.outerHeight(!1),k=parseInt(this.pane.css("top"),10),h=parseInt(this.pane.css("bottom"),10),j=i+k+h,n=Math.round(j/b*j),nthis.options.sliderMaxHeight&&(n=this.options.sliderMaxHeight),g===t&&f.overflowX!==t&&(n+=e),this.maxSliderTop=j-n,this.contentHeight=b,this.paneHeight=i,this.paneOuterHeight=j,this.sliderHeight=n,this.paneTop=k,this.slider.height(n),this.events.scroll(),this.pane.show(),this.isActive=!0,a.scrollHeight===a.clientHeight||this.pane.outerHeight(!0)>=a.scrollHeight&&g!==t?(this.pane.hide(),this.isActive=!1):this.el.clientHeight===a.scrollHeight&&g===t?this.slider.hide():this.slider.show(),this.pane.css({opacity:this.options.alwaysVisible?1:"",visibility:this.options.alwaysVisible?"visible":""}),c=this.$content.css("position"),("static"===c||"relative"===c)&&(m=parseInt(this.$content.css("right"),10),m&&this.$content.css({right:"",marginRight:m})),this)},j.prototype.scroll=function(){return this.isActive?(this.sliderY=Math.max(0,this.sliderY),this.sliderY=Math.min(this.maxSliderTop,this.sliderY),this.$content.scrollTop(this.maxScrollTop*this.sliderY/this.maxSliderTop),this.iOSNativeScrolling||(this.updateScrollValues(),this.setOnScrollStyles()),this):void 0},j.prototype.scrollBottom=function(a){return this.isActive?(this.$content.scrollTop(this.contentHeight-this.$content.height()-a).trigger(p),this.stop().restore(),this):void 0},j.prototype.scrollTop=function(a){return this.isActive?(this.$content.scrollTop(+a).trigger(p),this.stop().restore(),this):void 0},j.prototype.scrollTo=function(a){return this.isActive?(this.scrollTop(this.$el.find(a).get(0).offsetTop),this):void 0},j.prototype.stop=function(){return y&&this.scrollRAF&&(y(this.scrollRAF),this.scrollRAF=null),this.stopped=!0,this.removeEvents(),this.iOSNativeScrolling||this.pane.hide(),this},j.prototype.destroy=function(){return this.stopped||this.stop(),!this.iOSNativeScrolling&&this.pane.length&&this.pane.remove(),d&&this.$content.height(""),this.$content.removeAttr("tabindex"),this.$el.hasClass("has-scrollbar")&&(this.$el.removeClass("has-scrollbar"),this.$content.css({right:""})),this},j.prototype.flash=function(){return!this.iOSNativeScrolling&&this.isActive?(this.reset(),this.pane.addClass("flashed"),setTimeout(function(a){return function(){a.pane.removeClass("flashed")}}(this),this.options.flashDelay),this):void 0},j}(),a.fn.nanoScroller=function(b){return this.each(function(){var c,d;if((d=this.nanoscroller)||(c=a.extend({},z,b),this.nanoscroller=d=new q(this,c)),b&&"object"==typeof b){if(a.extend(d.options,b),null!=b.scrollBottom)return d.scrollBottom(b.scrollBottom);if(null!=b.scrollTop)return d.scrollTop(b.scrollTop);if(b.scrollTo)return d.scrollTo(b.scrollTo);if("bottom"===b.scroll)return d.scrollBottom(0);if("top"===b.scroll)return d.scrollTop(0);if(b.scroll&&b.scroll instanceof a)return d.scrollTo(b.scroll);if(b.stop)return d.stop();if(b.destroy)return d.destroy();if(b.flash)return d.flash()}return d.reset()})},a.fn.nanoScroller.Constructor=q});
var Swiper=function (selector, params){
'use strict';
if(!document.body.outerHTML && document.body.__defineGetter__){
if(HTMLElement){
var element=HTMLElement.prototype;
if(element.__defineGetter__){
element.__defineGetter__('outerHTML', function (){ return new XMLSerializer().serializeToString(this); });}}
}
if(!window.getComputedStyle){
window.getComputedStyle=function (el, pseudo){
this.el=el;
this.getPropertyValue=function (prop){
var re=/(\-([a-z]){1})/g;
if(prop==='float') prop='styleFloat';
if(re.test(prop)){
prop=prop.replace(re, function (){
return arguments[2].toUpperCase();
});}
return el.currentStyle[prop] ? el.currentStyle[prop]:null;
};
return this;
};}
if(!Array.prototype.indexOf){
Array.prototype.indexOf=function (obj, start){
for (var i=(start || 0), j=this.length; i < j; i++){
if(this[i]===obj){ return i; }}
return -1;
};}
if(!document.querySelectorAll){
if(!window.jQuery) return;
}
function $$(selector, context){
if(document.querySelectorAll)
return (context || document).querySelectorAll(selector);
else
return jQuery(selector, context);
}
if(typeof selector==='undefined') return;
if(!(selector.nodeType)){
if($$(selector).length===0) return;
}
var _this=this;
_this.touches={
start:0,
startX:0,
startY:0,
current:0,
currentX:0,
currentY:0,
diff:0,
abs:0
};
_this.positions={
start:0,
abs:0,
diff:0,
current:0
};
_this.times={
start:0,
end:0
};
_this.id=(new Date()).getTime();
_this.container=(selector.nodeType) ? selector:$$(selector)[0];
_this.isTouched=false;
_this.isMoved=false;
_this.activeIndex=0;
_this.centerIndex=0;
_this.activeLoaderIndex=0;
_this.activeLoopIndex=0;
_this.previousIndex=null;
_this.velocity=0;
_this.snapGrid=[];
_this.slidesGrid=[];
_this.imagesToLoad=[];
_this.imagesLoaded=0;
_this.wrapperLeft=0;
_this.wrapperRight=0;
_this.wrapperTop=0;
_this.wrapperBottom=0;
_this.isAndroid=navigator.userAgent.toLowerCase().indexOf('android') >=0;
var wrapper, slideSize, wrapperSize, direction, isScrolling, containerSize;
var defaults={
eventTarget:'wrapper',
mode:'horizontal',
touchRatio:1,
speed:300,
freeMode:false,
freeModeFluid:false,
momentumRatio:1,
momentumBounce:true,
momentumBounceRatio:1,
slidesPerView:1,
slidesPerGroup:1,
slidesPerViewFit:true,
simulateTouch:true,
followFinger:true,
shortSwipes:true,
longSwipesRatio:0.5,
moveStartThreshold:false,
onlyExternal:false,
createPagination:true,
pagination:false,
paginationElement:'span',
paginationClickable:false,
paginationAsRange:true,
resistance:true,
scrollContainer:false,
preventLinks:true,
preventLinksPropagation:false,
noSwiping:false,
noSwipingClass:'swiper-no-swiping',
initialSlide:0,
keyboardControl:false,
mousewheelControl:false,
mousewheelControlForceToAxis:false,
useCSS3Transforms:true,
autoplay:false,
autoplayDisableOnInteraction:true,
autoplayStopOnLast:false,
loop:false,
loopAdditionalSlides:0,
roundLengths:false,
calculateHeight:false,
cssWidthAndHeight:false,
updateOnImagesReady:true,
releaseFormElements:true,
watchActiveIndex:false,
visibilityFullFit:false,
offsetPxBefore:0,
offsetPxAfter:0,
offsetSlidesBefore:0,
offsetSlidesAfter:0,
centeredSlides:false,
queueStartCallbacks:false,
queueEndCallbacks:false,
autoResize:true,
resizeReInit:false,
DOMAnimation:true,
loader:{
slides:[],
slidesHTMLType:'inner',
surroundGroups:1,
logic:'reload',
loadAllSlides:false
},
swipeToPrev:true,
swipeToNext:true,
slideElement:'div',
slideClass:'swiper-slide',
slideActiveClass:'swiper-slide-active',
slideVisibleClass:'swiper-slide-visible',
slideDuplicateClass:'swiper-slide-duplicate',
wrapperClass:'swiper-wrapper',
paginationElementClass:'swiper-pagination-switch',
paginationActiveClass:'swiper-active-switch',
paginationVisibleClass:'swiper-visible-switch'
};
params=params || {};
for (var prop in defaults){
if(prop in params && typeof params[prop]==='object'){
for (var subProp in defaults[prop]){
if(! (subProp in params[prop])){
params[prop][subProp]=defaults[prop][subProp];
}}
}
else if(! (prop in params)){
params[prop]=defaults[prop];
}}
_this.params=params;
if(params.scrollContainer){
params.freeMode=true;
params.freeModeFluid=true;
}
if(params.loop){
params.resistance='100%';
}
var isH=params.mode==='horizontal';
var desktopEvents=['mousedown', 'mousemove', 'mouseup'];
if(_this.browser.ie10) desktopEvents=['MSPointerDown', 'MSPointerMove', 'MSPointerUp'];
if(_this.browser.ie11) desktopEvents=['pointerdown', 'pointermove', 'pointerup'];
_this.touchEvents={
touchStart:_this.support.touch || !params.simulateTouch ? 'touchstart':desktopEvents[0],
touchMove:_this.support.touch || !params.simulateTouch ? 'touchmove':desktopEvents[1],
touchEnd:_this.support.touch || !params.simulateTouch ? 'touchend':desktopEvents[2]
};
for (var i=_this.container.childNodes.length - 1; i >=0; i--){
if(_this.container.childNodes[i].className){
var _wrapperClasses=_this.container.childNodes[i].className.split(/\s+/);
for (var j=0; j < _wrapperClasses.length; j++){
if(_wrapperClasses[j]===params.wrapperClass){
wrapper=_this.container.childNodes[i];
}}
}}
_this.wrapper=wrapper;
_this._extendSwiperSlide=function (el){
el.append=function (){
if(params.loop){
el.insertAfter(_this.slides.length - _this.loopedSlides);
}else{
_this.wrapper.appendChild(el);
_this.reInit();
}
return el;
};
el.prepend=function (){
if(params.loop){
_this.wrapper.insertBefore(el, _this.slides[_this.loopedSlides]);
_this.removeLoopedSlides();
_this.calcSlides();
_this.createLoop();
}else{
_this.wrapper.insertBefore(el, _this.wrapper.firstChild);
}
_this.reInit();
return el;
};
el.insertAfter=function (index){
if(typeof index==='undefined') return false;
var beforeSlide;
if(params.loop){
beforeSlide=_this.slides[index + 1 + _this.loopedSlides];
if(beforeSlide){
_this.wrapper.insertBefore(el, beforeSlide);
}else{
_this.wrapper.appendChild(el);
}
_this.removeLoopedSlides();
_this.calcSlides();
_this.createLoop();
}else{
beforeSlide=_this.slides[index + 1];
_this.wrapper.insertBefore(el, beforeSlide);
}
_this.reInit();
return el;
};
el.clone=function (){
return _this._extendSwiperSlide(el.cloneNode(true));
};
el.remove=function (){
_this.wrapper.removeChild(el);
_this.reInit();
};
el.html=function (html){
if(typeof html==='undefined'){
return el.innerHTML;
}else{
el.innerHTML=html;
return el;
}};
el.index=function (){
var index;
for (var i=_this.slides.length - 1; i >=0; i--){
if(el===_this.slides[i]) index=i;
}
return index;
};
el.isActive=function (){
if(el.index()===_this.activeIndex) return true;
else return false;
};
if(!el.swiperSlideDataStorage) el.swiperSlideDataStorage={};
el.getData=function (name){
return el.swiperSlideDataStorage[name];
};
el.setData=function (name, value){
el.swiperSlideDataStorage[name]=value;
return el;
};
el.data=function (name, value){
if(typeof value==='undefined'){
return el.getAttribute('data-' + name);
}else{
el.setAttribute('data-' + name, value);
return el;
}};
el.getWidth=function (outer, round){
return _this.h.getWidth(el, outer, round);
};
el.getHeight=function (outer, round){
return _this.h.getHeight(el, outer, round);
};
el.getOffset=function (){
return _this.h.getOffset(el);
};
return el;
};
_this.calcSlides=function (forceCalcSlides){
var oldNumber=_this.slides ? _this.slides.length:false;
_this.slides=[];
_this.displaySlides=[];
for (var i=0; i < _this.wrapper.childNodes.length; i++){
if(_this.wrapper.childNodes[i].className){
var _className=_this.wrapper.childNodes[i].className;
var _slideClasses=_className.split(/\s+/);
for (var j=0; j < _slideClasses.length; j++){
if(_slideClasses[j]===params.slideClass){
_this.slides.push(_this.wrapper.childNodes[i]);
}}
}}
for (i=_this.slides.length - 1; i >=0; i--){
_this._extendSwiperSlide(_this.slides[i]);
}
if(oldNumber===false) return;
if(oldNumber!==_this.slides.length || forceCalcSlides){
removeSlideEvents();
addSlideEvents();
_this.updateActiveSlide();
if(_this.params.pagination) _this.createPagination();
_this.callPlugins('numberOfSlidesChanged');
}};
_this.createSlide=function (html, slideClassList, el){
slideClassList=slideClassList || _this.params.slideClass;
el=el || params.slideElement;
var newSlide=document.createElement(el);
newSlide.innerHTML=html || '';
newSlide.className=slideClassList;
return _this._extendSwiperSlide(newSlide);
};
_this.appendSlide=function (html, slideClassList, el){
if(!html) return;
if(html.nodeType){
return _this._extendSwiperSlide(html).append();
}else{
return _this.createSlide(html, slideClassList, el).append();
}};
_this.prependSlide=function (html, slideClassList, el){
if(!html) return;
if(html.nodeType){
return _this._extendSwiperSlide(html).prepend();
}else{
return _this.createSlide(html, slideClassList, el).prepend();
}};
_this.insertSlideAfter=function (index, html, slideClassList, el){
if(typeof index==='undefined') return false;
if(html.nodeType){
return _this._extendSwiperSlide(html).insertAfter(index);
}else{
return _this.createSlide(html, slideClassList, el).insertAfter(index);
}};
_this.removeSlide=function (index){
if(_this.slides[index]){
if(params.loop){
if(!_this.slides[index + _this.loopedSlides]) return false;
_this.slides[index + _this.loopedSlides].remove();
_this.removeLoopedSlides();
_this.calcSlides();
_this.createLoop();
}
else _this.slides[index].remove();
return true;
}
else return false;
};
_this.removeLastSlide=function (){
if(_this.slides.length > 0){
if(params.loop){
_this.slides[_this.slides.length - 1 - _this.loopedSlides].remove();
_this.removeLoopedSlides();
_this.calcSlides();
_this.createLoop();
}
else _this.slides[_this.slides.length - 1].remove();
return true;
}else{
return false;
}};
_this.removeAllSlides=function (){
var num=_this.slides.length;
for (var i=_this.slides.length - 1; i >=0; i--){
_this.slides[i].remove();
if(i===num - 1){
_this.setWrapperTranslate(0);
}}
};
_this.getSlide=function (index){
return _this.slides[index];
};
_this.getLastSlide=function (){
return _this.slides[_this.slides.length - 1];
};
_this.getFirstSlide=function (){
return _this.slides[0];
};
_this.activeSlide=function (){
return _this.slides[_this.activeIndex];
};
_this.fireCallback=function (){
var callback=arguments[0];
if(Object.prototype.toString.call(callback)==='[object Array]'){
for (var i=0; i < callback.length; i++){
if(typeof callback[i]==='function'){
callback[i](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
}}
} else if(Object.prototype.toString.call(callback)==='[object String]'){
if(params['on' + callback]) _this.fireCallback(params['on' + callback], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
}else{
callback(arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
}};
function isArray(obj){
if(Object.prototype.toString.apply(obj)==='[object Array]') return true;
return false;
}
_this.addCallback=function (callback, func){
var _this=this, tempFunc;
if(_this.params['on' + callback]){
if(isArray(this.params['on' + callback])){
return this.params['on' + callback].push(func);
} else if(typeof this.params['on' + callback]==='function'){
tempFunc=this.params['on' + callback];
this.params['on' + callback]=[];
this.params['on' + callback].push(tempFunc);
return this.params['on' + callback].push(func);
}}else{
this.params['on' + callback]=[];
return this.params['on' + callback].push(func);
}};
_this.removeCallbacks=function (callback){
if(_this.params['on' + callback]){
_this.params['on' + callback]=null;
}};
var _plugins=[];
for (var plugin in _this.plugins){
if(params[plugin]){
var p=_this.plugins[plugin](_this, params[plugin]);
if(p) _plugins.push(p);
}}
_this.callPlugins=function (method, args){
if(!args) args={};
for (var i=0; i < _plugins.length; i++){
if(method in _plugins[i]){
_plugins[i][method](args);
}}
};
if((_this.browser.ie10 || _this.browser.ie11) && !params.onlyExternal){
_this.wrapper.classList.add('swiper-wp8-' + (isH ? 'horizontal':'vertical'));
}
if(params.freeMode){
_this.container.className +=' swiper-free-mode';
}
_this.initialized=false;
_this.init=function (force, forceCalcSlides){
var _width=_this.h.getWidth(_this.container, false, params.roundLengths);
var _height=_this.h.getHeight(_this.container, false, params.roundLengths);
if(_width===_this.width && _height===_this.height && !force) return;
_this.width=_width;
_this.height=_height;
var slideWidth, slideHeight, slideMaxHeight, wrapperWidth, wrapperHeight, slideLeft;
var i;
containerSize=isH ? _width:_height;
var wrapper=_this.wrapper;
if(force){
_this.calcSlides(forceCalcSlides);
}
if(params.slidesPerView==='auto'){
var slidesWidth=0;
var slidesHeight=0;
if(params.slidesOffset > 0){
wrapper.style.paddingLeft='';
wrapper.style.paddingRight='';
wrapper.style.paddingTop='';
wrapper.style.paddingBottom='';
}
wrapper.style.width='';
wrapper.style.height='';
if(params.offsetPxBefore > 0){
if(isH) _this.wrapperLeft=params.offsetPxBefore;
else _this.wrapperTop=params.offsetPxBefore;
}
if(params.offsetPxAfter > 0){
if(isH) _this.wrapperRight=params.offsetPxAfter;
else _this.wrapperBottom=params.offsetPxAfter;
}
if(params.centeredSlides){
if(isH){
_this.wrapperLeft=(containerSize - this.slides[0].getWidth(true, params.roundLengths)) / 2;
_this.wrapperRight=(containerSize - _this.slides[_this.slides.length - 1].getWidth(true, params.roundLengths)) / 2;
}else{
_this.wrapperTop=(containerSize - _this.slides[0].getHeight(true, params.roundLengths)) / 2;
_this.wrapperBottom=(containerSize - _this.slides[_this.slides.length - 1].getHeight(true, params.roundLengths)) / 2;
}}
if(isH){
if(_this.wrapperLeft >=0) wrapper.style.paddingLeft=_this.wrapperLeft + 'px';
if(_this.wrapperRight >=0) wrapper.style.paddingRight=_this.wrapperRight + 'px';
}else{
if(_this.wrapperTop >=0) wrapper.style.paddingTop=_this.wrapperTop + 'px';
if(_this.wrapperBottom >=0) wrapper.style.paddingBottom=_this.wrapperBottom + 'px';
}
slideLeft=0;
var centeredSlideLeft=0;
_this.snapGrid=[];
_this.slidesGrid=[];
slideMaxHeight=0;
for (i=0; i < _this.slides.length; i++){
slideWidth=_this.slides[i].getWidth(true, params.roundLengths);
slideHeight=_this.slides[i].getHeight(true, params.roundLengths);
if(params.calculateHeight){
slideMaxHeight=Math.max(slideMaxHeight, slideHeight);
}
var _slideSize=isH ? slideWidth:slideHeight;
if(params.centeredSlides){
var nextSlideWidth=i===_this.slides.length - 1 ? 0:_this.slides[i + 1].getWidth(true, params.roundLengths);
var nextSlideHeight=i===_this.slides.length - 1 ? 0:_this.slides[i + 1].getHeight(true, params.roundLengths);
var nextSlideSize=isH ? nextSlideWidth:nextSlideHeight;
if(_slideSize > containerSize){
if(params.slidesPerViewFit){
_this.snapGrid.push(slideLeft + _this.wrapperLeft);
_this.snapGrid.push(slideLeft + _slideSize - containerSize + _this.wrapperLeft);
}else{
for (var j=0; j <=Math.floor(_slideSize / (containerSize + _this.wrapperLeft)); j++){
if(j===0) _this.snapGrid.push(slideLeft + _this.wrapperLeft);
else _this.snapGrid.push(slideLeft + _this.wrapperLeft + containerSize * j);
}}
_this.slidesGrid.push(slideLeft + _this.wrapperLeft);
}else{
_this.snapGrid.push(centeredSlideLeft);
_this.slidesGrid.push(centeredSlideLeft);
}
centeredSlideLeft +=_slideSize / 2 + nextSlideSize / 2;
}else{
if(_slideSize > containerSize){
if(params.slidesPerViewFit){
_this.snapGrid.push(slideLeft);
_this.snapGrid.push(slideLeft + _slideSize - containerSize);
}else{
if(containerSize!==0){
for (var k=0; k <=Math.floor(_slideSize / containerSize); k++){
_this.snapGrid.push(slideLeft + containerSize * k);
}}else{
_this.snapGrid.push(slideLeft);
}}
}else{
_this.snapGrid.push(slideLeft);
}
_this.slidesGrid.push(slideLeft);
}
slideLeft +=_slideSize;
slidesWidth +=slideWidth;
slidesHeight +=slideHeight;
}
if(params.calculateHeight) _this.height=slideMaxHeight;
if(isH){
wrapperSize=slidesWidth + _this.wrapperRight + _this.wrapperLeft;
if(!params.cssWidthAndHeight || params.cssWidthAndHeight==='height'){
wrapper.style.width=(slidesWidth) + 'px';
}
if(!params.cssWidthAndHeight || params.cssWidthAndHeight==='width'){
wrapper.style.height=(_this.height) + 'px';
}}else{
if(!params.cssWidthAndHeight || params.cssWidthAndHeight==='height'){
wrapper.style.width=(_this.width) + 'px';
}
if(!params.cssWidthAndHeight || params.cssWidthAndHeight==='width'){
wrapper.style.height=(slidesHeight) + 'px';
}
wrapperSize=slidesHeight + _this.wrapperTop + _this.wrapperBottom;
}}
else if(params.scrollContainer){
wrapper.style.width='';
wrapper.style.height='';
wrapperWidth=_this.slides[0].getWidth(true, params.roundLengths);
wrapperHeight=_this.slides[0].getHeight(true, params.roundLengths);
wrapperSize=isH ? wrapperWidth:wrapperHeight;
wrapper.style.width=wrapperWidth + 'px';
wrapper.style.height=wrapperHeight + 'px';
slideSize=isH ? wrapperWidth:wrapperHeight;
}else{
if(params.calculateHeight){
slideMaxHeight=0;
wrapperHeight=0;
if(!isH) _this.container.style.height='';
wrapper.style.height='';
for (i=0; i < _this.slides.length; i++){
_this.slides[i].style.height='';
slideMaxHeight=Math.max(_this.slides[i].getHeight(true), slideMaxHeight);
if(!isH) wrapperHeight +=_this.slides[i].getHeight(true);
}
slideHeight=slideMaxHeight;
_this.height=slideHeight;
if(isH) wrapperHeight=slideHeight;
else {
containerSize=slideHeight;
_this.container.style.height=containerSize + 'px';
}}else{
slideHeight=isH ? _this.height:_this.height / params.slidesPerView;
if(params.roundLengths) slideHeight=Math.ceil(slideHeight);
wrapperHeight=isH ? _this.height:_this.slides.length * slideHeight;
}
slideWidth=isH ? _this.width / params.slidesPerView:_this.width;
if(params.roundLengths) slideWidth=Math.ceil(slideWidth);
wrapperWidth=isH ? _this.slides.length * slideWidth:_this.width;
slideSize=isH ? slideWidth:slideHeight;
if(params.offsetSlidesBefore > 0){
if(isH) _this.wrapperLeft=slideSize * params.offsetSlidesBefore;
else _this.wrapperTop=slideSize * params.offsetSlidesBefore;
}
if(params.offsetSlidesAfter > 0){
if(isH) _this.wrapperRight=slideSize * params.offsetSlidesAfter;
else _this.wrapperBottom=slideSize * params.offsetSlidesAfter;
}
if(params.offsetPxBefore > 0){
if(isH) _this.wrapperLeft=params.offsetPxBefore;
else _this.wrapperTop=params.offsetPxBefore;
}
if(params.offsetPxAfter > 0){
if(isH) _this.wrapperRight=params.offsetPxAfter;
else _this.wrapperBottom=params.offsetPxAfter;
}
if(params.centeredSlides){
if(isH){
_this.wrapperLeft=(containerSize - slideSize) / 2;
_this.wrapperRight=(containerSize - slideSize) / 2;
}else{
_this.wrapperTop=(containerSize - slideSize) / 2;
_this.wrapperBottom=(containerSize - slideSize) / 2;
}}
if(isH){
if(_this.wrapperLeft > 0) wrapper.style.paddingLeft=_this.wrapperLeft + 'px';
if(_this.wrapperRight > 0) wrapper.style.paddingRight=_this.wrapperRight + 'px';
}else{
if(_this.wrapperTop > 0) wrapper.style.paddingTop=_this.wrapperTop + 'px';
if(_this.wrapperBottom > 0) wrapper.style.paddingBottom=_this.wrapperBottom + 'px';
}
wrapperSize=isH ? wrapperWidth + _this.wrapperRight + _this.wrapperLeft:wrapperHeight + _this.wrapperTop + _this.wrapperBottom;
if(parseFloat(wrapperWidth) > 0 && (!params.cssWidthAndHeight || params.cssWidthAndHeight==='height')){
wrapper.style.width=wrapperWidth + 'px';
}
if(parseFloat(wrapperHeight) > 0 && (!params.cssWidthAndHeight || params.cssWidthAndHeight==='width')){
wrapper.style.height=wrapperHeight + 'px';
}
slideLeft=0;
_this.snapGrid=[];
_this.slidesGrid=[];
for (i=0; i < _this.slides.length; i++){
_this.snapGrid.push(slideLeft);
_this.slidesGrid.push(slideLeft);
slideLeft +=slideSize;
if(parseFloat(slideWidth) > 0 && (!params.cssWidthAndHeight || params.cssWidthAndHeight==='height')){
_this.slides[i].style.width=slideWidth + 'px';
}
if(parseFloat(slideHeight) > 0 && (!params.cssWidthAndHeight || params.cssWidthAndHeight==='width')){
_this.slides[i].style.height=slideHeight + 'px';
}}
}
if(!_this.initialized){
_this.callPlugins('onFirstInit');
if(params.onFirstInit) _this.fireCallback(params.onFirstInit, _this);
}else{
_this.callPlugins('onInit');
if(params.onInit) _this.fireCallback(params.onInit, _this);
}
_this.initialized=true;
};
_this.reInit=function (forceCalcSlides){
_this.init(true, forceCalcSlides);
};
_this.resizeFix=function (reInit){
_this.callPlugins('beforeResizeFix');
_this.init(params.resizeReInit || reInit);
if(!params.freeMode){
_this.swipeTo((params.loop ? _this.activeLoopIndex:_this.activeIndex), 0, false);
if(params.autoplay){
if(_this.support.transitions && typeof autoplayTimeoutId!=='undefined'){
if(typeof autoplayTimeoutId!=='undefined'){
clearTimeout(autoplayTimeoutId);
autoplayTimeoutId=undefined;
_this.startAutoplay();
}}else{
if(typeof autoplayIntervalId!=='undefined'){
clearInterval(autoplayIntervalId);
autoplayIntervalId=undefined;
_this.startAutoplay();
}}
}}
else if(_this.getWrapperTranslate() < -maxWrapperPosition()){
_this.setWrapperTransition(0);
_this.setWrapperTranslate(-maxWrapperPosition());
}
_this.callPlugins('afterResizeFix');
};
function maxWrapperPosition(){
var a=(wrapperSize - containerSize);
if(params.freeMode){
a=wrapperSize - containerSize;
}
if(params.slidesPerView > _this.slides.length && !params.centeredSlides){
a=0;
}
if(a < 0) a=0;
return a;
}
function initEvents(){
var bind=_this.h.addEventListener;
var eventTarget=params.eventTarget==='wrapper' ? _this.wrapper:_this.container;
if(! (_this.browser.ie10 || _this.browser.ie11)){
if(_this.support.touch){
bind(eventTarget, 'touchstart', onTouchStart);
bind(eventTarget, 'touchmove', onTouchMove);
bind(eventTarget, 'touchend', onTouchEnd);
}
if(params.simulateTouch){
bind(eventTarget, 'mousedown', onTouchStart);
bind(document, 'mousemove', onTouchMove);
bind(document, 'mouseup', onTouchEnd);
}}else{
bind(eventTarget, _this.touchEvents.touchStart, onTouchStart);
bind(document, _this.touchEvents.touchMove, onTouchMove);
bind(document, _this.touchEvents.touchEnd, onTouchEnd);
}
if(params.autoResize){
bind(window, 'resize', _this.resizeFix);
}
addSlideEvents();
_this._wheelEvent=false;
if(params.mousewheelControl){
if(document.onmousewheel!==undefined){
_this._wheelEvent='mousewheel';
}
if(!_this._wheelEvent){
try {
new WheelEvent('wheel');
_this._wheelEvent='wheel';
} catch (e){}}
if(!_this._wheelEvent){
_this._wheelEvent='DOMMouseScroll';
}
if(_this._wheelEvent){
bind(_this.container, _this._wheelEvent, handleMousewheel);
}}
function _loadImage(img){
var image, src;
var onReady=function (){
if(typeof _this==='undefined' || _this===null) return;
if(_this.imagesLoaded!==undefined) _this.imagesLoaded++;
if(_this.imagesLoaded===_this.imagesToLoad.length){
_this.reInit();
if(params.onImagesReady) _this.fireCallback(params.onImagesReady, _this);
}};
if(!img.complete){
src=(img.currentSrc || img.getAttribute('src'));
if(src){
image=new Image();
image.onload=onReady;
image.onerror=onReady;
image.src=src;
}else{
onReady();
}}else{
onReady();
}}
if(params.keyboardControl){
bind(document, 'keydown', handleKeyboardKeys);
}
if(params.updateOnImagesReady){
_this.imagesToLoad=$$('img', _this.container);
for (var i=0; i < _this.imagesToLoad.length; i++){
_loadImage(_this.imagesToLoad[i]);
}}
}
_this.destroy=function (removeStyles){
var unbind=_this.h.removeEventListener;
var eventTarget=params.eventTarget==='wrapper' ? _this.wrapper:_this.container;
if(! (_this.browser.ie10 || _this.browser.ie11)){
if(_this.support.touch){
unbind(eventTarget, 'touchstart', onTouchStart);
unbind(eventTarget, 'touchmove', onTouchMove);
unbind(eventTarget, 'touchend', onTouchEnd);
}
if(params.simulateTouch){
unbind(eventTarget, 'mousedown', onTouchStart);
unbind(document, 'mousemove', onTouchMove);
unbind(document, 'mouseup', onTouchEnd);
}}else{
unbind(eventTarget, _this.touchEvents.touchStart, onTouchStart);
unbind(document, _this.touchEvents.touchMove, onTouchMove);
unbind(document, _this.touchEvents.touchEnd, onTouchEnd);
}
if(params.autoResize){
unbind(window, 'resize', _this.resizeFix);
}
removeSlideEvents();
if(params.paginationClickable){
removePaginationEvents();
}
if(params.mousewheelControl && _this._wheelEvent){
unbind(_this.container, _this._wheelEvent, handleMousewheel);
}
if(params.keyboardControl){
unbind(document, 'keydown', handleKeyboardKeys);
}
if(params.autoplay){
_this.stopAutoplay();
}
if(removeStyles){
_this.wrapper.removeAttribute('style');
for (var i=0; i < _this.slides.length; i++){
_this.slides[i].removeAttribute('style');
}}
_this.callPlugins('onDestroy');
if(window.jQuery && window.jQuery(_this.container).data('swiper')){
window.jQuery(_this.container).removeData('swiper');
}
if(window.Zepto && window.Zepto(_this.container).data('swiper')){
window.Zepto(_this.container).removeData('swiper');
}
_this=null;
};
function addSlideEvents(){
var bind=_this.h.addEventListener,
i;
if(params.preventLinks){
var links=$$('a', _this.container);
for (i=0; i < links.length; i++){
bind(links[i], 'click', preventClick);
}}
if(params.releaseFormElements){
var formElements=$$('input, textarea, select', _this.container);
for (i=0; i < formElements.length; i++){
bind(formElements[i], _this.touchEvents.touchStart, releaseForms, true);
if(_this.support.touch && params.simulateTouch){
bind(formElements[i], 'mousedown', releaseForms, true);
}}
}
if(params.onSlideClick){
for (i=0; i < _this.slides.length; i++){
bind(_this.slides[i], 'click', slideClick);
}}
if(params.onSlideTouch){
for (i=0; i < _this.slides.length; i++){
bind(_this.slides[i], _this.touchEvents.touchStart, slideTouch);
}}
}
function removeSlideEvents(){
var unbind=_this.h.removeEventListener,
i;
if(params.onSlideClick){
for (i=0; i < _this.slides.length; i++){
unbind(_this.slides[i], 'click', slideClick);
}}
if(params.onSlideTouch){
for (i=0; i < _this.slides.length; i++){
unbind(_this.slides[i], _this.touchEvents.touchStart, slideTouch);
}}
if(params.releaseFormElements){
var formElements=$$('input, textarea, select', _this.container);
for (i=0; i < formElements.length; i++){
unbind(formElements[i], _this.touchEvents.touchStart, releaseForms, true);
if(_this.support.touch && params.simulateTouch){
unbind(formElements[i], 'mousedown', releaseForms, true);
}}
}
if(params.preventLinks){
var links=$$('a', _this.container);
for (i=0; i < links.length; i++){
unbind(links[i], 'click', preventClick);
}}
}
function handleKeyboardKeys(e){
var kc=e.keyCode || e.charCode;
if(e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) return;
if(kc===37 || kc===39 || kc===38 || kc===40){
var inView=false;
var swiperOffset=_this.h.getOffset(_this.container);
var scrollLeft=_this.h.windowScroll().left;
var scrollTop=_this.h.windowScroll().top;
var windowWidth=_this.h.windowWidth();
var windowHeight=_this.h.windowHeight();
var swiperCoord=[
[swiperOffset.left, swiperOffset.top],
[swiperOffset.left + _this.width, swiperOffset.top],
[swiperOffset.left, swiperOffset.top + _this.height],
[swiperOffset.left + _this.width, swiperOffset.top + _this.height]
];
for (var i=0; i < swiperCoord.length; i++){
var point=swiperCoord[i];
if(point[0] >=scrollLeft && point[0] <=scrollLeft + windowWidth &&
point[1] >=scrollTop && point[1] <=scrollTop + windowHeight
){
inView=true;
}}
if(!inView) return;
}
if(isH){
if(kc===37 || kc===39){
if(e.preventDefault) e.preventDefault();
else e.returnValue=false;
}
if(kc===39) _this.swipeNext();
if(kc===37) _this.swipePrev();
}else{
if(kc===38 || kc===40){
if(e.preventDefault) e.preventDefault();
else e.returnValue=false;
}
if(kc===40) _this.swipeNext();
if(kc===38) _this.swipePrev();
}}
_this.disableKeyboardControl=function (){
params.keyboardControl=false;
_this.h.removeEventListener(document, 'keydown', handleKeyboardKeys);
};
_this.enableKeyboardControl=function (){
params.keyboardControl=true;
_this.h.addEventListener(document, 'keydown', handleKeyboardKeys);
};
var lastScrollTime=(new Date()).getTime();
function handleMousewheel(e){
var we=_this._wheelEvent;
var delta=0;
if(e.detail) delta=-e.detail;
else if(we==='mousewheel'){
if(params.mousewheelControlForceToAxis){
if(isH){
if(Math.abs(e.wheelDeltaX) > Math.abs(e.wheelDeltaY)) delta=e.wheelDeltaX;
else return;
}else{
if(Math.abs(e.wheelDeltaY) > Math.abs(e.wheelDeltaX)) delta=e.wheelDeltaY;
else return;
}}else{
delta=e.wheelDelta;
}}
else if(we==='DOMMouseScroll') delta=-e.detail;
else if(we==='wheel'){
if(params.mousewheelControlForceToAxis){
if(isH){
if(Math.abs(e.deltaX) > Math.abs(e.deltaY)) delta=-e.deltaX;
else return;
}else{
if(Math.abs(e.deltaY) > Math.abs(e.deltaX)) delta=-e.deltaY;
else return;
}}else{
delta=Math.abs(e.deltaX) > Math.abs(e.deltaY) ? - e.deltaX:- e.deltaY;
}}
if(!params.freeMode){
if((new Date()).getTime() - lastScrollTime > 60){
if(delta < 0) _this.swipeNext();
else _this.swipePrev();
}
lastScrollTime=(new Date()).getTime();
}else{
var position=_this.getWrapperTranslate() + delta;
if(position > 0) position=0;
if(position < -maxWrapperPosition()) position=-maxWrapperPosition();
_this.setWrapperTransition(0);
_this.setWrapperTranslate(position);
_this.updateActiveSlide(position);
if(position===0 || position===-maxWrapperPosition()) return;
}
if(params.autoplay) _this.stopAutoplay(true);
if(e.preventDefault) e.preventDefault();
else e.returnValue=false;
return false;
}
_this.disableMousewheelControl=function (){
if(!_this._wheelEvent) return false;
params.mousewheelControl=false;
_this.h.removeEventListener(_this.container, _this._wheelEvent, handleMousewheel);
return true;
};
_this.enableMousewheelControl=function (){
if(!_this._wheelEvent) return false;
params.mousewheelControl=true;
_this.h.addEventListener(_this.container, _this._wheelEvent, handleMousewheel);
return true;
};
if(params.grabCursor){
var containerStyle=_this.container.style;
containerStyle.cursor='move';
containerStyle.cursor='grab';
containerStyle.cursor='-moz-grab';
containerStyle.cursor='-webkit-grab';
}
_this.allowSlideClick=true;
function slideClick(event){
if(_this.allowSlideClick){
setClickedSlide(event);
_this.fireCallback(params.onSlideClick, _this, event);
}}
function slideTouch(event){
setClickedSlide(event);
_this.fireCallback(params.onSlideTouch, _this, event);
}
function setClickedSlide(event){
if(!event.currentTarget){
var element=event.srcElement;
do {
if(element.className.indexOf(params.slideClass) > -1){
break;
}
element=element.parentNode;
} while (element);
_this.clickedSlide=element;
}else{
_this.clickedSlide=event.currentTarget;
}
_this.clickedSlideIndex=_this.slides.indexOf(_this.clickedSlide);
_this.clickedSlideLoopIndex=_this.clickedSlideIndex - (_this.loopedSlides || 0);
}
_this.allowLinks=true;
function preventClick(e){
if(!_this.allowLinks){
if(e.preventDefault) e.preventDefault();
else e.returnValue=false;
if(params.preventLinksPropagation && 'stopPropagation' in e){
e.stopPropagation();
}
return false;
}}
function releaseForms(e){
if(e.stopPropagation) e.stopPropagation();
else e.returnValue=false;
return false;
}
var isTouchEvent=false;
var allowThresholdMove;
var allowMomentumBounce=true;
function onTouchStart(event){
if(params.preventLinks) _this.allowLinks=true;
if(_this.isTouched || params.onlyExternal){
return false;
}
var eventTarget=event.target || event.srcElement;
if(document.activeElement && document.activeElement!==document.body){
if(document.activeElement!==eventTarget) document.activeElement.blur();
}
var formTagNames=('input select textarea').split(' ');
if(params.noSwiping && (eventTarget) && noSwipingSlide(eventTarget)) return false;
allowMomentumBounce=false;
_this.isTouched=true;
isTouchEvent=event.type==='touchstart';
if(!isTouchEvent && 'which' in event && event.which===3){
_this.isTouched=false;
return false;
}
if(!isTouchEvent || event.targetTouches.length===1){
_this.callPlugins('onTouchStartBegin');
if(!isTouchEvent && !_this.isAndroid && formTagNames.indexOf(eventTarget.tagName.toLowerCase()) < 0){
if(event.preventDefault) event.preventDefault();
else event.returnValue=false;
}
var pageX=isTouchEvent ? event.targetTouches[0].pageX:(event.pageX || event.clientX);
var pageY=isTouchEvent ? event.targetTouches[0].pageY:(event.pageY || event.clientY);
_this.touches.startX=_this.touches.currentX=pageX;
_this.touches.startY=_this.touches.currentY=pageY;
_this.touches.start=_this.touches.current=isH ? pageX:pageY;
_this.setWrapperTransition(0);
_this.positions.start=_this.positions.current=_this.getWrapperTranslate();
_this.setWrapperTranslate(_this.positions.start);
_this.times.start=(new Date()).getTime();
isScrolling=undefined;
if(params.moveStartThreshold > 0){
allowThresholdMove=false;
}
if(params.onTouchStart) _this.fireCallback(params.onTouchStart, _this, event);
_this.callPlugins('onTouchStartEnd');
}}
var velocityPrevPosition, velocityPrevTime;
function onTouchMove(event){
if(!_this.isTouched || params.onlyExternal) return;
if(isTouchEvent && event.type==='mousemove') return;
var pageX=isTouchEvent ? event.targetTouches[0].pageX:(event.pageX || event.clientX);
var pageY=isTouchEvent ? event.targetTouches[0].pageY:(event.pageY || event.clientY);
if(typeof isScrolling==='undefined' && isH){
isScrolling=!!(isScrolling || Math.abs(pageY - _this.touches.startY) > Math.abs(pageX - _this.touches.startX));
}
if(typeof isScrolling==='undefined' && !isH){
isScrolling=!!(isScrolling || Math.abs(pageY - _this.touches.startY) < Math.abs(pageX - _this.touches.startX));
}
if(isScrolling){
_this.isTouched=false;
return;
}
if(isH){
if((!params.swipeToNext && pageX < _this.touches.startX) || ((!params.swipeToPrev && pageX > _this.touches.startX))){
return;
}}else{
if((!params.swipeToNext && pageY < _this.touches.startY) || ((!params.swipeToPrev && pageY > _this.touches.startY))){
return;
}}
if(event.assignedToSwiper){
_this.isTouched=false;
return;
}
event.assignedToSwiper=true;
if(params.preventLinks){
_this.allowLinks=false;
}
if(params.onSlideClick){
_this.allowSlideClick=false;
}
if(params.autoplay){
_this.stopAutoplay(true);
}
if(!isTouchEvent || event.touches.length===1){
if(!_this.isMoved){
_this.callPlugins('onTouchMoveStart');
if(params.loop){
_this.fixLoop();
_this.positions.start=_this.getWrapperTranslate();
}
if(params.onTouchMoveStart) _this.fireCallback(params.onTouchMoveStart, _this);
}
_this.isMoved=true;
if(event.preventDefault) event.preventDefault();
else event.returnValue=false;
_this.touches.current=isH ? pageX:pageY;
_this.positions.current=(_this.touches.current - _this.touches.start) * params.touchRatio + _this.positions.start;
if(_this.positions.current > 0 && params.onResistanceBefore){
_this.fireCallback(params.onResistanceBefore, _this, _this.positions.current);
}
if(_this.positions.current < -maxWrapperPosition() && params.onResistanceAfter){
_this.fireCallback(params.onResistanceAfter, _this, Math.abs(_this.positions.current + maxWrapperPosition()));
}
if(params.resistance && params.resistance!=='100%'){
var resistance;
if(_this.positions.current > 0){
resistance=1 - _this.positions.current / containerSize / 2;
if(resistance < 0.5)
_this.positions.current=(containerSize / 2);
else
_this.positions.current=_this.positions.current * resistance;
}
if(_this.positions.current < -maxWrapperPosition()){
var diff=(_this.touches.current - _this.touches.start) * params.touchRatio + (maxWrapperPosition() + _this.positions.start);
resistance=(containerSize + diff) / (containerSize);
var newPos=_this.positions.current - diff * (1 - resistance) / 2;
var stopPos=-maxWrapperPosition() - containerSize / 2;
if(newPos < stopPos || resistance <=0)
_this.positions.current=stopPos;
else
_this.positions.current=newPos;
}}
if(params.resistance && params.resistance==='100%'){
if(_this.positions.current > 0 && !(params.freeMode && !params.freeModeFluid)){
_this.positions.current=0;
}
if(_this.positions.current < -maxWrapperPosition() && !(params.freeMode && !params.freeModeFluid)){
_this.positions.current=-maxWrapperPosition();
}}
if(!params.followFinger) return;
if(!params.moveStartThreshold){
_this.setWrapperTranslate(_this.positions.current);
}else{
if(Math.abs(_this.touches.current - _this.touches.start) > params.moveStartThreshold || allowThresholdMove){
if(!allowThresholdMove){
allowThresholdMove=true;
_this.touches.start=_this.touches.current;
return;
}
_this.setWrapperTranslate(_this.positions.current);
}else{
_this.positions.current=_this.positions.start;
}}
if(params.freeMode || params.watchActiveIndex){
_this.updateActiveSlide(_this.positions.current);
}
if(params.grabCursor){
_this.container.style.cursor='move';
_this.container.style.cursor='grabbing';
_this.container.style.cursor='-moz-grabbin';
_this.container.style.cursor='-webkit-grabbing';
}
if(!velocityPrevPosition) velocityPrevPosition=_this.touches.current;
if(!velocityPrevTime) velocityPrevTime=(new Date()).getTime();
_this.velocity=(_this.touches.current - velocityPrevPosition) / ((new Date()).getTime() - velocityPrevTime) / 2;
if(Math.abs(_this.touches.current - velocityPrevPosition) < 2) _this.velocity=0;
velocityPrevPosition=_this.touches.current;
velocityPrevTime=(new Date()).getTime();
_this.callPlugins('onTouchMoveEnd');
if(params.onTouchMove) _this.fireCallback(params.onTouchMove, _this, event);
return false;
}}
function onTouchEnd(event){
if(isScrolling){
_this.swipeReset();
}
if(params.onlyExternal || !_this.isTouched) return;
_this.isTouched=false;
if(params.grabCursor){
_this.container.style.cursor='move';
_this.container.style.cursor='grab';
_this.container.style.cursor='-moz-grab';
_this.container.style.cursor='-webkit-grab';
}
if(!_this.positions.current && _this.positions.current!==0){
_this.positions.current=_this.positions.start;
}
if(params.followFinger){
_this.setWrapperTranslate(_this.positions.current);
}
_this.times.end=(new Date()).getTime();
_this.touches.diff=_this.touches.current - _this.touches.start;
_this.touches.abs=Math.abs(_this.touches.diff);
_this.positions.diff=_this.positions.current - _this.positions.start;
_this.positions.abs=Math.abs(_this.positions.diff);
var diff=_this.positions.diff;
var diffAbs=_this.positions.abs;
var timeDiff=_this.times.end - _this.times.start;
if(diffAbs < 5 && (timeDiff) < 300 && _this.allowLinks===false){
if(!params.freeMode && diffAbs!==0) _this.swipeReset();
if(params.preventLinks){
_this.allowLinks=true;
}
if(params.onSlideClick){
_this.allowSlideClick=true;
}}
setTimeout(function (){
if(typeof _this==='undefined' || _this===null) return;
if(params.preventLinks){
_this.allowLinks=true;
}
if(params.onSlideClick){
_this.allowSlideClick=true;
}}, 100);
var maxPosition=maxWrapperPosition();
if(!_this.isMoved && params.freeMode){
_this.isMoved=false;
if(params.onTouchEnd) _this.fireCallback(params.onTouchEnd, _this, event);
_this.callPlugins('onTouchEnd');
return;
}
if(!_this.isMoved || _this.positions.current > 0 || _this.positions.current < -maxPosition){
_this.swipeReset();
if(params.onTouchEnd) _this.fireCallback(params.onTouchEnd, _this, event);
_this.callPlugins('onTouchEnd');
return;
}
_this.isMoved=false;
if(params.freeMode){
if(params.freeModeFluid){
var momentumDuration=1000 * params.momentumRatio;
var momentumDistance=_this.velocity * momentumDuration;
var newPosition=_this.positions.current + momentumDistance;
var doBounce=false;
var afterBouncePosition;
var bounceAmount=Math.abs(_this.velocity) * 20 * params.momentumBounceRatio;
if(newPosition < -maxPosition){
if(params.momentumBounce && _this.support.transitions){
if(newPosition + maxPosition < -bounceAmount) newPosition=-maxPosition - bounceAmount;
afterBouncePosition=-maxPosition;
doBounce=true;
allowMomentumBounce=true;
}
else newPosition=-maxPosition;
}
if(newPosition > 0){
if(params.momentumBounce && _this.support.transitions){
if(newPosition > bounceAmount) newPosition=bounceAmount;
afterBouncePosition=0;
doBounce=true;
allowMomentumBounce=true;
}
else newPosition=0;
}
if(_this.velocity!==0) momentumDuration=Math.abs((newPosition - _this.positions.current) / _this.velocity);
_this.setWrapperTranslate(newPosition);
_this.setWrapperTransition(momentumDuration);
if(params.momentumBounce && doBounce){
_this.wrapperTransitionEnd(function (){
if(!allowMomentumBounce) return;
if(params.onMomentumBounce) _this.fireCallback(params.onMomentumBounce, _this);
_this.callPlugins('onMomentumBounce');
_this.setWrapperTranslate(afterBouncePosition);
_this.setWrapperTransition(300);
});}
_this.updateActiveSlide(newPosition);
}
if(!params.freeModeFluid || timeDiff >=300) _this.updateActiveSlide(_this.positions.current);
if(params.onTouchEnd) _this.fireCallback(params.onTouchEnd, _this, event);
_this.callPlugins('onTouchEnd');
return;
}
direction=diff < 0 ? 'toNext':'toPrev';
if(direction==='toNext' && (timeDiff <=300)){
if(diffAbs < 30 || !params.shortSwipes) _this.swipeReset();
else _this.swipeNext(true, true);
}
if(direction==='toPrev' && (timeDiff <=300)){
if(diffAbs < 30 || !params.shortSwipes) _this.swipeReset();
else _this.swipePrev(true, true);
}
var targetSlideSize=0;
if(params.slidesPerView==='auto'){
var currentPosition=Math.abs(_this.getWrapperTranslate());
var slidesOffset=0;
var _slideSize;
for (var i=0; i < _this.slides.length; i++){
_slideSize=isH ? _this.slides[i].getWidth(true, params.roundLengths):_this.slides[i].getHeight(true, params.roundLengths);
slidesOffset +=_slideSize;
if(slidesOffset > currentPosition){
targetSlideSize=_slideSize;
break;
}}
if(targetSlideSize > containerSize) targetSlideSize=containerSize;
}else{
targetSlideSize=slideSize * params.slidesPerView;
}
if(direction==='toNext' && (timeDiff > 300)){
if(diffAbs >=targetSlideSize * params.longSwipesRatio){
_this.swipeNext(true, true);
}else{
_this.swipeReset();
}}
if(direction==='toPrev' && (timeDiff > 300)){
if(diffAbs >=targetSlideSize * params.longSwipesRatio){
_this.swipePrev(true, true);
}else{
_this.swipeReset();
}}
if(params.onTouchEnd) _this.fireCallback(params.onTouchEnd, _this, event);
_this.callPlugins('onTouchEnd');
}
function hasClass(el, classname){
return el && el.getAttribute('class') && el.getAttribute('class').indexOf(classname) > -1;
}
function noSwipingSlide(el){
var noSwiping=false;
do {
if(hasClass(el, params.noSwipingClass)){
noSwiping=true;
}
el=el.parentElement;
} while (!noSwiping && el.parentElement && !hasClass(el, params.wrapperClass));
if(!noSwiping && hasClass(el, params.wrapperClass) && hasClass(el, params.noSwipingClass))
noSwiping=true;
return noSwiping;
}
function addClassToHtmlString(klass, outerHtml){
var par=document.createElement('div');
var child;
par.innerHTML=outerHtml;
child=par.firstChild;
child.className +=' ' + klass;
return child.outerHTML;
}
_this.swipeNext=function (runCallbacks, internal){
if(typeof runCallbacks==='undefined') runCallbacks=true;
if(!internal && params.loop) _this.fixLoop();
if(!internal && params.autoplay) _this.stopAutoplay(true);
_this.callPlugins('onSwipeNext');
var currentPosition=_this.getWrapperTranslate().toFixed(2);
var newPosition=currentPosition;
if(params.slidesPerView==='auto'){
for (var i=0; i < _this.snapGrid.length; i++){
if(-currentPosition >=_this.snapGrid[i].toFixed(2) && -currentPosition < _this.snapGrid[i + 1].toFixed(2)){
newPosition=-_this.snapGrid[i + 1];
break;
}}
}else{
var groupSize=slideSize * params.slidesPerGroup;
newPosition=-(Math.floor(Math.abs(currentPosition) / Math.floor(groupSize)) * groupSize + groupSize);
}
if(newPosition < -maxWrapperPosition()){
newPosition=-maxWrapperPosition();
}
if(newPosition===currentPosition) return false;
swipeToPosition(newPosition, 'next', {runCallbacks:runCallbacks});return true;
};
_this.swipePrev=function (runCallbacks, internal){
if(typeof runCallbacks==='undefined') runCallbacks=true;
if(!internal && params.loop) _this.fixLoop();
if(!internal && params.autoplay) _this.stopAutoplay(true);
_this.callPlugins('onSwipePrev');
var currentPosition=Math.ceil(_this.getWrapperTranslate());
var newPosition;
if(params.slidesPerView==='auto'){
newPosition=0;
for (var i=1; i < _this.snapGrid.length; i++){
if(-currentPosition===_this.snapGrid[i]){
newPosition=-_this.snapGrid[i - 1];
break;
}
if(-currentPosition > _this.snapGrid[i] && -currentPosition < _this.snapGrid[i + 1]){
newPosition=-_this.snapGrid[i];
break;
}}
}else{
var groupSize=slideSize * params.slidesPerGroup;
newPosition=-(Math.ceil(-currentPosition / groupSize) - 1) * groupSize;
}
if(newPosition > 0) newPosition=0;
if(newPosition===currentPosition) return false;
swipeToPosition(newPosition, 'prev', {runCallbacks:runCallbacks});return true;
};
_this.swipeReset=function (runCallbacks){
if(typeof runCallbacks==='undefined') runCallbacks=true;
_this.callPlugins('onSwipeReset');
var currentPosition=_this.getWrapperTranslate();
var groupSize=slideSize * params.slidesPerGroup;
var newPosition;
var maxPosition=-maxWrapperPosition();
if(params.slidesPerView==='auto'){
newPosition=0;
for (var i=0; i < _this.snapGrid.length; i++){
if(-currentPosition===_this.snapGrid[i]) return;
if(-currentPosition >=_this.snapGrid[i] && -currentPosition < _this.snapGrid[i + 1]){
if(_this.positions.diff > 0) newPosition=-_this.snapGrid[i + 1];
else newPosition=-_this.snapGrid[i];
break;
}}
if(-currentPosition >=_this.snapGrid[_this.snapGrid.length - 1]) newPosition=-_this.snapGrid[_this.snapGrid.length - 1];
if(currentPosition <=-maxWrapperPosition()) newPosition=-maxWrapperPosition();
}else{
newPosition=currentPosition < 0 ? Math.round(currentPosition / groupSize) * groupSize:0;
if(currentPosition <=-maxWrapperPosition()) newPosition=-maxWrapperPosition();
}
if(params.scrollContainer){
newPosition=currentPosition < 0 ? currentPosition:0;
}
if(newPosition < -maxWrapperPosition()){
newPosition=-maxWrapperPosition();
}
if(params.scrollContainer && (containerSize > slideSize)){
newPosition=0;
}
if(newPosition===currentPosition) return false;
swipeToPosition(newPosition, 'reset', {runCallbacks:runCallbacks});return true;
};
_this.swipeTo=function (index, speed, runCallbacks){
index=parseInt(index, 10);
_this.callPlugins('onSwipeTo', {index:index, speed:speed});if(params.loop) index=index + _this.loopedSlides;
var currentPosition=_this.getWrapperTranslate();
if(!isFinite(index) || index > (_this.slides.length - 1) || index < 0) return;
var newPosition;
if(params.slidesPerView==='auto'){
newPosition=-_this.slidesGrid[index];
}else{
newPosition=-index * slideSize;
}
if(newPosition < - maxWrapperPosition()){
newPosition=- maxWrapperPosition();
}
if(newPosition===currentPosition) return false;
if(typeof runCallbacks==='undefined') runCallbacks=true;
swipeToPosition(newPosition, 'to', {index:index, speed:speed, runCallbacks:runCallbacks});return true;
};
function swipeToPosition(newPosition, action, toOptions){
var speed=(action==='to' && toOptions.speed >=0) ? toOptions.speed:params.speed;
var timeOld=+ new Date();
function anim(){
var timeNew=+ new Date();
var time=timeNew - timeOld;
currentPosition +=animationStep * time / (1000 / 60);
condition=direction==='toNext' ? currentPosition > newPosition:currentPosition < newPosition;
if(condition){
_this.setWrapperTranslate(Math.ceil(currentPosition));
_this._DOMAnimating=true;
window.setTimeout(function (){
anim();
}, 1000 / 60);
}else{
if(params.onSlideChangeEnd){
if(action==='to'){
if(toOptions.runCallbacks===true) _this.fireCallback(params.onSlideChangeEnd, _this, direction);
}else{
_this.fireCallback(params.onSlideChangeEnd, _this, direction);
}}
_this.setWrapperTranslate(newPosition);
_this._DOMAnimating=false;
}}
if(_this.support.transitions || !params.DOMAnimation){
_this.setWrapperTranslate(newPosition);
_this.setWrapperTransition(speed);
}else{
var currentPosition=_this.getWrapperTranslate();
var animationStep=Math.ceil((newPosition - currentPosition) / speed * (1000 / 60));
var direction=currentPosition > newPosition ? 'toNext':'toPrev';
var condition=direction==='toNext' ? currentPosition > newPosition:currentPosition < newPosition;
if(_this._DOMAnimating) return;
anim();
}
_this.updateActiveSlide(newPosition);
if(params.onSlideNext && action==='next' && toOptions.runCallbacks===true){
_this.fireCallback(params.onSlideNext, _this, newPosition);
}
if(params.onSlidePrev && action==='prev' && toOptions.runCallbacks===true){
_this.fireCallback(params.onSlidePrev, _this, newPosition);
}
if(params.onSlideReset && action==='reset' && toOptions.runCallbacks===true){
_this.fireCallback(params.onSlideReset, _this, newPosition);
}
if((action==='next' || action==='prev' || action==='to') && toOptions.runCallbacks===true)
slideChangeCallbacks(action);
}
_this._queueStartCallbacks=false;
_this._queueEndCallbacks=false;
function slideChangeCallbacks(direction){
_this.callPlugins('onSlideChangeStart');
if(params.onSlideChangeStart){
if(params.queueStartCallbacks && _this.support.transitions){
if(_this._queueStartCallbacks) return;
_this._queueStartCallbacks=true;
_this.fireCallback(params.onSlideChangeStart, _this, direction);
_this.wrapperTransitionEnd(function (){
_this._queueStartCallbacks=false;
});}
else _this.fireCallback(params.onSlideChangeStart, _this, direction);
}
if(params.onSlideChangeEnd){
if(_this.support.transitions){
if(params.queueEndCallbacks){
if(_this._queueEndCallbacks) return;
_this._queueEndCallbacks=true;
_this.wrapperTransitionEnd(function (swiper){
_this.fireCallback(params.onSlideChangeEnd, swiper, direction);
});}else{
_this.wrapperTransitionEnd(function (swiper){
_this.fireCallback(params.onSlideChangeEnd, swiper, direction);
});}}else{
if(!params.DOMAnimation){
setTimeout(function (){
_this.fireCallback(params.onSlideChangeEnd, _this, direction);
}, 10);
}}
}}
_this.updateActiveSlide=function (position){
if(!_this.initialized) return;
if(_this.slides.length===0) return;
_this.previousIndex=_this.activeIndex;
if(typeof position==='undefined') position=_this.getWrapperTranslate();
if(position > 0) position=0;
var i;
if(params.slidesPerView==='auto'){
var slidesOffset=0;
_this.activeIndex=_this.slidesGrid.indexOf(-position);
if(_this.activeIndex < 0){
for (i=0; i < _this.slidesGrid.length - 1; i++){
if(-position > _this.slidesGrid[i] && -position < _this.slidesGrid[i + 1]){
break;
}}
var leftDistance=Math.abs(_this.slidesGrid[i] + position);
var rightDistance=Math.abs(_this.slidesGrid[i + 1] + position);
if(leftDistance <=rightDistance) _this.activeIndex=i;
else _this.activeIndex=i + 1;
}}else{
_this.activeIndex=Math[params.visibilityFullFit ? 'ceil':'round'](-position / slideSize);
}
if(_this.activeIndex===_this.slides.length) _this.activeIndex=_this.slides.length - 1;
if(_this.activeIndex < 0) _this.activeIndex=0;
if(!_this.slides[_this.activeIndex]) return;
_this.calcVisibleSlides(position);
if(_this.support.classList){
var slide;
for (i=0; i < _this.slides.length; i++){
slide=_this.slides[i];
slide.classList.remove(params.slideActiveClass);
if(_this.visibleSlides.indexOf(slide) >=0){
slide.classList.add(params.slideVisibleClass);
}else{
slide.classList.remove(params.slideVisibleClass);
}}
_this.slides[_this.activeIndex].classList.add(params.slideActiveClass);
}else{
var activeClassRegexp=new RegExp('\\s*' + params.slideActiveClass);
var inViewClassRegexp=new RegExp('\\s*' + params.slideVisibleClass);
for (i=0; i < _this.slides.length; i++){
_this.slides[i].className=_this.slides[i].className.replace(activeClassRegexp, '').replace(inViewClassRegexp, '');
if(_this.visibleSlides.indexOf(_this.slides[i]) >=0){
_this.slides[i].className +=' ' + params.slideVisibleClass;
}}
_this.slides[_this.activeIndex].className +=' ' + params.slideActiveClass;
}
if(params.loop){
var ls=_this.loopedSlides;
_this.activeLoopIndex=_this.activeIndex - ls;
if(_this.activeLoopIndex >=_this.slides.length - ls * 2){
_this.activeLoopIndex=_this.slides.length - ls * 2 - _this.activeLoopIndex;
}
if(_this.activeLoopIndex < 0){
_this.activeLoopIndex=_this.slides.length - ls * 2 + _this.activeLoopIndex;
}
if(_this.activeLoopIndex < 0) _this.activeLoopIndex=0;
}else{
_this.activeLoopIndex=_this.activeIndex;
}
if(params.pagination){
_this.updatePagination(position);
}};
_this.createPagination=function (firstInit){
if(params.paginationClickable && _this.paginationButtons){
removePaginationEvents();
}
_this.paginationContainer=params.pagination.nodeType ? params.pagination:$$(params.pagination)[0];
if(params.createPagination){
var paginationHTML='';
var numOfSlides=_this.slides.length;
var numOfButtons=numOfSlides;
if(params.loop) numOfButtons -=_this.loopedSlides * 2;
for (var i=0; i < numOfButtons; i++){
paginationHTML +='<' + params.paginationElement + ' class="' + params.paginationElementClass + '">' + params.paginationElement + '>';
}
_this.paginationContainer.innerHTML=paginationHTML;
}
_this.paginationButtons=$$('.' + params.paginationElementClass, _this.paginationContainer);
if(!firstInit) _this.updatePagination();
_this.callPlugins('onCreatePagination');
if(params.paginationClickable){
addPaginationEvents();
}};
function removePaginationEvents(){
var pagers=_this.paginationButtons;
if(pagers){
for (var i=0; i < pagers.length; i++){
_this.h.removeEventListener(pagers[i], 'click', paginationClick);
}}
}
function addPaginationEvents(){
var pagers=_this.paginationButtons;
if(pagers){
for (var i=0; i < pagers.length; i++){
_this.h.addEventListener(pagers[i], 'click', paginationClick);
}}
}
function paginationClick(e){
var index;
var target=e.target || e.srcElement;
var pagers=_this.paginationButtons;
for (var i=0; i < pagers.length; i++){
if(target===pagers[i]) index=i;
}
if(params.autoplay) _this.stopAutoplay(true);
_this.swipeTo(index);
}
_this.updatePagination=function (position){
if(!params.pagination) return;
if(_this.slides.length < 1) return;
var activePagers=$$('.' + params.paginationActiveClass, _this.paginationContainer);
if(!activePagers) return;
var pagers=_this.paginationButtons;
if(pagers.length===0) return;
for (var i=0; i < pagers.length; i++){
pagers[i].className=params.paginationElementClass;
}
var indexOffset=params.loop ? _this.loopedSlides:0;
if(params.paginationAsRange){
if(!_this.visibleSlides) _this.calcVisibleSlides(position);
var visibleIndexes=[];
var j;
for (j=0; j < _this.visibleSlides.length; j++){
var visIndex=_this.slides.indexOf(_this.visibleSlides[j]) - indexOffset;
if(params.loop && visIndex < 0){
visIndex=_this.slides.length - _this.loopedSlides * 2 + visIndex;
}
if(params.loop && visIndex >=_this.slides.length - _this.loopedSlides * 2){
visIndex=_this.slides.length - _this.loopedSlides * 2 - visIndex;
visIndex=Math.abs(visIndex);
}
visibleIndexes.push(visIndex);
}
for (j=0; j < visibleIndexes.length; j++){
if(pagers[visibleIndexes[j]]) pagers[visibleIndexes[j]].className +=' ' + params.paginationVisibleClass;
}
if(params.loop){
if(pagers[_this.activeLoopIndex]!==undefined){
pagers[_this.activeLoopIndex].className +=' ' + params.paginationActiveClass;
}}else{
if(pagers[_this.activeIndex]) pagers[_this.activeIndex].className +=' ' + params.paginationActiveClass;
}}else{
if(params.loop){
if(pagers[_this.activeLoopIndex]) pagers[_this.activeLoopIndex].className +=' ' + params.paginationActiveClass + ' ' + params.paginationVisibleClass;
}else{
if(pagers[_this.activeIndex]) pagers[_this.activeIndex].className +=' ' + params.paginationActiveClass + ' ' + params.paginationVisibleClass;
}}
};
_this.calcVisibleSlides=function (position){
var visibleSlides=[];
var _slideLeft=0, _slideSize=0, _slideRight=0;
if(isH && _this.wrapperLeft > 0) position=position + _this.wrapperLeft;
if(!isH && _this.wrapperTop > 0) position=position + _this.wrapperTop;
for (var i=0; i < _this.slides.length; i++){
_slideLeft +=_slideSize;
if(params.slidesPerView==='auto')
_slideSize=isH ? _this.h.getWidth(_this.slides[i], true, params.roundLengths):_this.h.getHeight(_this.slides[i], true, params.roundLengths);
else _slideSize=slideSize;
_slideRight=_slideLeft + _slideSize;
var isVisibile=false;
if(params.visibilityFullFit){
if(_slideLeft >=-position && _slideRight <=-position + containerSize) isVisibile=true;
if(_slideLeft <=-position && _slideRight >=-position + containerSize) isVisibile=true;
}else{
if(_slideRight > -position && _slideRight <=((-position + containerSize))) isVisibile=true;
if(_slideLeft >=-position && _slideLeft < ((-position + containerSize))) isVisibile=true;
if(_slideLeft < -position && _slideRight > ((-position + containerSize))) isVisibile=true;
}
if(isVisibile) visibleSlides.push(_this.slides[i]);
}
if(visibleSlides.length===0) visibleSlides=[_this.slides[_this.activeIndex]];
_this.visibleSlides=visibleSlides;
};
var autoplayTimeoutId, autoplayIntervalId;
_this.startAutoplay=function (){
if(_this.support.transitions){
if(typeof autoplayTimeoutId!=='undefined') return false;
if(!params.autoplay) return;
_this.callPlugins('onAutoplayStart');
if(params.onAutoplayStart) _this.fireCallback(params.onAutoplayStart, _this);
autoplay();
}else{
if(typeof autoplayIntervalId!=='undefined') return false;
if(!params.autoplay) return;
_this.callPlugins('onAutoplayStart');
if(params.onAutoplayStart) _this.fireCallback(params.onAutoplayStart, _this);
autoplayIntervalId=setInterval(function (){
if(params.loop){
_this.fixLoop();
_this.swipeNext(true, true);
}
else if(!_this.swipeNext(true, true)){
if(!params.autoplayStopOnLast) _this.swipeTo(0);
else {
clearInterval(autoplayIntervalId);
autoplayIntervalId=undefined;
}}
}, params.autoplay);
}};
_this.stopAutoplay=function (internal){
if(_this.support.transitions){
if(!autoplayTimeoutId) return;
if(autoplayTimeoutId) clearTimeout(autoplayTimeoutId);
autoplayTimeoutId=undefined;
if(internal && !params.autoplayDisableOnInteraction){
_this.wrapperTransitionEnd(function (){
autoplay();
});}
_this.callPlugins('onAutoplayStop');
if(params.onAutoplayStop) _this.fireCallback(params.onAutoplayStop, _this);
}else{
if(autoplayIntervalId) clearInterval(autoplayIntervalId);
autoplayIntervalId=undefined;
_this.callPlugins('onAutoplayStop');
if(params.onAutoplayStop) _this.fireCallback(params.onAutoplayStop, _this);
}};
function autoplay(){
autoplayTimeoutId=setTimeout(function (){
if(params.loop){
_this.fixLoop();
_this.swipeNext(true, true);
}
else if(!_this.swipeNext(true, true)){
if(!params.autoplayStopOnLast) _this.swipeTo(0);
else {
clearTimeout(autoplayTimeoutId);
autoplayTimeoutId=undefined;
}}
_this.wrapperTransitionEnd(function (){
if(typeof autoplayTimeoutId!=='undefined') autoplay();
});}, params.autoplay);
}
_this.loopCreated=false;
_this.removeLoopedSlides=function (){
if(_this.loopCreated){
for (var i=0; i < _this.slides.length; i++){
if(_this.slides[i].getData('looped')===true) _this.wrapper.removeChild(_this.slides[i]);
}}
};
_this.createLoop=function (){
if(_this.slides.length===0) return;
if(params.slidesPerView==='auto'){
_this.loopedSlides=params.loopedSlides || 1;
}else{
_this.loopedSlides=Math.floor(params.slidesPerView) + params.loopAdditionalSlides;
}
if(_this.loopedSlides > _this.slides.length){
_this.loopedSlides=_this.slides.length;
}
var slideFirstHTML='',
slideLastHTML='',
i;
var slidesSetFullHTML='';
var numSlides=_this.slides.length;
var fullSlideSets=Math.floor(_this.loopedSlides / numSlides);
var remainderSlides=_this.loopedSlides % numSlides;
for (i=0; i < (fullSlideSets * numSlides); i++){
var j=i;
if(i >=numSlides){
var over=Math.floor(i / numSlides);
j=i - (numSlides * over);
}
slidesSetFullHTML +=_this.slides[j].outerHTML;
}
for (i=0; i < remainderSlides;i++){
slideLastHTML +=addClassToHtmlString(params.slideDuplicateClass, _this.slides[i].outerHTML);
}
for (i=numSlides - remainderSlides; i < numSlides;i++){
slideFirstHTML +=addClassToHtmlString(params.slideDuplicateClass, _this.slides[i].outerHTML);
}
var slides=slideFirstHTML + slidesSetFullHTML + wrapper.innerHTML + slidesSetFullHTML + slideLastHTML;
wrapper.innerHTML=slides;
_this.loopCreated=true;
_this.calcSlides();
for (i=0; i < _this.slides.length; i++){
if(i < _this.loopedSlides || i >=_this.slides.length - _this.loopedSlides) _this.slides[i].setData('looped', true);
}
_this.callPlugins('onCreateLoop');
};
_this.fixLoop=function (){
var newIndex;
if(_this.activeIndex < _this.loopedSlides){
newIndex=_this.slides.length - _this.loopedSlides * 3 + _this.activeIndex;
_this.swipeTo(newIndex, 0, false);
}
else if((params.slidesPerView==='auto' && _this.activeIndex >=_this.loopedSlides * 2) || (_this.activeIndex > _this.slides.length - params.slidesPerView * 2)){
newIndex=-_this.slides.length + _this.activeIndex + _this.loopedSlides;
_this.swipeTo(newIndex, 0, false);
}};
_this.loadSlides=function (){
var slidesHTML='';
_this.activeLoaderIndex=0;
var slides=params.loader.slides;
var slidesToLoad=params.loader.loadAllSlides ? slides.length:params.slidesPerView * (1 + params.loader.surroundGroups);
for (var i=0; i < slidesToLoad; i++){
if(params.loader.slidesHTMLType==='outer') slidesHTML +=slides[i];
else {
slidesHTML +='<' + params.slideElement + ' class="' + params.slideClass + '" data-swiperindex="' + i + '">' + slides[i] + '' + params.slideElement + '>';
}}
_this.wrapper.innerHTML=slidesHTML;
_this.calcSlides(true);
if(!params.loader.loadAllSlides){
_this.wrapperTransitionEnd(_this.reloadSlides, true);
}};
_this.reloadSlides=function (){
var slides=params.loader.slides;
var newActiveIndex=parseInt(_this.activeSlide().data('swiperindex'), 10);
if(newActiveIndex < 0 || newActiveIndex > slides.length - 1) return;
_this.activeLoaderIndex=newActiveIndex;
var firstIndex=Math.max(0, newActiveIndex - params.slidesPerView * params.loader.surroundGroups);
var lastIndex=Math.min(newActiveIndex + params.slidesPerView * (1 + params.loader.surroundGroups) - 1, slides.length - 1);
if(newActiveIndex > 0){
var newTransform=-slideSize * (newActiveIndex - firstIndex);
_this.setWrapperTranslate(newTransform);
_this.setWrapperTransition(0);
}
var i;
if(params.loader.logic==='reload'){
_this.wrapper.innerHTML='';
var slidesHTML='';
for (i=firstIndex; i <=lastIndex; i++){
slidesHTML +=params.loader.slidesHTMLType==='outer' ? slides[i]:'<' + params.slideElement + ' class="' + params.slideClass + '" data-swiperindex="' + i + '">' + slides[i] + '' + params.slideElement + '>';
}
_this.wrapper.innerHTML=slidesHTML;
}else{
var minExistIndex=1000;
var maxExistIndex=0;
for (i=0; i < _this.slides.length; i++){
var index=_this.slides[i].data('swiperindex');
if(index < firstIndex || index > lastIndex){
_this.wrapper.removeChild(_this.slides[i]);
}else{
minExistIndex=Math.min(index, minExistIndex);
maxExistIndex=Math.max(index, maxExistIndex);
}}
for (i=firstIndex; i <=lastIndex; i++){
var newSlide;
if(i < minExistIndex){
newSlide=document.createElement(params.slideElement);
newSlide.className=params.slideClass;
newSlide.setAttribute('data-swiperindex', i);
newSlide.innerHTML=slides[i];
_this.wrapper.insertBefore(newSlide, _this.wrapper.firstChild);
}
if(i > maxExistIndex){
newSlide=document.createElement(params.slideElement);
newSlide.className=params.slideClass;
newSlide.setAttribute('data-swiperindex', i);
newSlide.innerHTML=slides[i];
_this.wrapper.appendChild(newSlide);
}}
}
_this.reInit(true);
};
function makeSwiper(){
_this.calcSlides();
if(params.loader.slides.length > 0 && _this.slides.length===0){
_this.loadSlides();
}
if(params.loop){
_this.createLoop();
}
_this.init();
initEvents();
if(params.pagination){
_this.createPagination(true);
}
if(params.loop || params.initialSlide > 0){
_this.swipeTo(params.initialSlide, 0, false);
}else{
_this.updateActiveSlide(0);
}
if(params.autoplay){
_this.startAutoplay();
}
_this.centerIndex=_this.activeIndex;
if(params.onSwiperCreated) _this.fireCallback(params.onSwiperCreated, _this);
_this.callPlugins('onSwiperCreated');
}
makeSwiper();
};
Swiper.prototype={
plugins:{},
wrapperTransitionEnd:function (callback, permanent){
'use strict';
var a=this,
el=a.wrapper,
events=['webkitTransitionEnd', 'transitionend', 'oTransitionEnd', 'MSTransitionEnd', 'msTransitionEnd'],
i;
function fireCallBack(e){
if(e.target!==el) return;
callback(a);
if(a.params.queueEndCallbacks) a._queueEndCallbacks=false;
if(!permanent){
for (i=0; i < events.length; i++){
a.h.removeEventListener(el, events[i], fireCallBack);
}}
}
if(callback){
for (i=0; i < events.length; i++){
a.h.addEventListener(el, events[i], fireCallBack);
}}
},
getWrapperTranslate:function (axis){
'use strict';
var el=this.wrapper,
matrix, curTransform, curStyle, transformMatrix;
if(typeof axis==='undefined'){
axis=this.params.mode==='horizontal' ? 'x':'y';
}
if(this.support.transforms && this.params.useCSS3Transforms){
curStyle=window.getComputedStyle(el, null);
if(window.WebKitCSSMatrix){
transformMatrix=new WebKitCSSMatrix(curStyle.webkitTransform==='none' ? '':curStyle.webkitTransform);
}else{
transformMatrix=curStyle.MozTransform || curStyle.OTransform || curStyle.MsTransform || curStyle.msTransform || curStyle.transform || curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');
matrix=transformMatrix.toString().split(',');
}
if(axis==='x'){
if(window.WebKitCSSMatrix)
curTransform=transformMatrix.m41;
else if(matrix.length===16)
curTransform=parseFloat(matrix[12]);
else
curTransform=parseFloat(matrix[4]);
}
if(axis==='y'){
if(window.WebKitCSSMatrix)
curTransform=transformMatrix.m42;
else if(matrix.length===16)
curTransform=parseFloat(matrix[13]);
else
curTransform=parseFloat(matrix[5]);
}}else{
if(axis==='x') curTransform=parseFloat(el.style.left, 10) || 0;
if(axis==='y') curTransform=parseFloat(el.style.top, 10) || 0;
}
return curTransform || 0;
},
setWrapperTranslate:function (x, y, z){
'use strict';
var es=this.wrapper.style,
coords={x:0, y:0, z:0},
translate;
if(arguments.length===3){
coords.x=x;
coords.y=y;
coords.z=z;
}else{
if(typeof y==='undefined'){
y=this.params.mode==='horizontal' ? 'x':'y';
}
coords[y]=x;
}
if(this.support.transforms && this.params.useCSS3Transforms){
translate=this.support.transforms3d ? 'translate3d(' + coords.x + 'px, ' + coords.y + 'px, ' + coords.z + 'px)':'translate(' + coords.x + 'px, ' + coords.y + 'px)';
es.webkitTransform=es.MsTransform=es.msTransform=es.MozTransform=es.OTransform=es.transform=translate;
}else{
es.left=coords.x + 'px';
es.top=coords.y + 'px';
}
this.callPlugins('onSetWrapperTransform', coords);
if(this.params.onSetWrapperTransform) this.fireCallback(this.params.onSetWrapperTransform, this, coords);
},
setWrapperTransition:function (duration){
'use strict';
var es=this.wrapper.style;
es.webkitTransitionDuration=es.MsTransitionDuration=es.msTransitionDuration=es.MozTransitionDuration=es.OTransitionDuration=es.transitionDuration=(duration / 1000) + 's';
this.callPlugins('onSetWrapperTransition', {duration:duration});if(this.params.onSetWrapperTransition) this.fireCallback(this.params.onSetWrapperTransition, this, duration);
},
h:{
getWidth:function (el, outer, round){
'use strict';
var width=window.getComputedStyle(el, null).getPropertyValue('width');
var returnWidth=parseFloat(width);
if(isNaN(returnWidth) || width.indexOf('%') > 0 || returnWidth < 0){
returnWidth=el.offsetWidth - parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-left')) - parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-right'));
}
if(outer) returnWidth +=parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-left')) + parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-right'));
if(round) return Math.ceil(returnWidth);
else return returnWidth;
},
getHeight:function (el, outer, round){
'use strict';
if(outer) return el.offsetHeight;
var height=window.getComputedStyle(el, null).getPropertyValue('height');
var returnHeight=parseFloat(height);
if(isNaN(returnHeight) || height.indexOf('%') > 0 || returnHeight < 0){
returnHeight=el.offsetHeight - parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-top')) - parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-bottom'));
}
if(outer) returnHeight +=parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-top')) + parseFloat(window.getComputedStyle(el, null).getPropertyValue('padding-bottom'));
if(round) return Math.ceil(returnHeight);
else return returnHeight;
},
getOffset:function (el){
'use strict';
var box=el.getBoundingClientRect();
var body=document.body;
var clientTop=el.clientTop || body.clientTop || 0;
var clientLeft=el.clientLeft || body.clientLeft || 0;
var scrollTop=window.pageYOffset || el.scrollTop;
var scrollLeft=window.pageXOffset || el.scrollLeft;
if(document.documentElement && !window.pageYOffset){
scrollTop=document.documentElement.scrollTop;
scrollLeft=document.documentElement.scrollLeft;
}
return {
top:box.top + scrollTop - clientTop,
left:box.left + scrollLeft - clientLeft
};},
windowWidth:function (){
'use strict';
if(window.innerWidth) return window.innerWidth;
else if(document.documentElement && document.documentElement.clientWidth) return document.documentElement.clientWidth;
},
windowHeight:function (){
'use strict';
if(window.innerHeight) return window.innerHeight;
else if(document.documentElement && document.documentElement.clientHeight) return document.documentElement.clientHeight;
},
windowScroll:function (){
'use strict';
if(typeof pageYOffset!=='undefined'){
return {
left:window.pageXOffset,
top:window.pageYOffset
};}
else if(document.documentElement){
return {
left:document.documentElement.scrollLeft,
top:document.documentElement.scrollTop
};}},
addEventListener:function (el, event, listener, useCapture){
'use strict';
if(typeof useCapture==='undefined'){
useCapture=false;
}
if(el.addEventListener){
el.addEventListener(event, listener, useCapture);
}
else if(el.attachEvent){
el.attachEvent('on' + event, listener);
}},
removeEventListener:function (el, event, listener, useCapture){
'use strict';
if(typeof useCapture==='undefined'){
useCapture=false;
}
if(el.removeEventListener){
el.removeEventListener(event, listener, useCapture);
}
else if(el.detachEvent){
el.detachEvent('on' + event, listener);
}}
},
setTransform:function (el, transform){
'use strict';
var es=el.style;
es.webkitTransform=es.MsTransform=es.msTransform=es.MozTransform=es.OTransform=es.transform=transform;
},
setTranslate:function (el, translate){
'use strict';
var es=el.style;
var pos={
x:translate.x || 0,
y:translate.y || 0,
z:translate.z || 0
};
var transformString=this.support.transforms3d ? 'translate3d(' + (pos.x) + 'px,' + (pos.y) + 'px,' + (pos.z) + 'px)':'translate(' + (pos.x) + 'px,' + (pos.y) + 'px)';
es.webkitTransform=es.MsTransform=es.msTransform=es.MozTransform=es.OTransform=es.transform=transformString;
if(!this.support.transforms){
es.left=pos.x + 'px';
es.top=pos.y + 'px';
}},
setTransition:function (el, duration){
'use strict';
var es=el.style;
es.webkitTransitionDuration=es.MsTransitionDuration=es.msTransitionDuration=es.MozTransitionDuration=es.OTransitionDuration=es.transitionDuration=duration + 'ms';
},
support:{
touch:(window.Modernizr && Modernizr.touch===true) || (function (){
'use strict';
return !!(('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch);
})(),
transforms3d:(window.Modernizr && Modernizr.csstransforms3d===true) || (function (){
'use strict';
var div=document.createElement('div').style;
return ('webkitPerspective' in div || 'MozPerspective' in div || 'OPerspective' in div || 'MsPerspective' in div || 'perspective' in div);
})(),
transforms:(window.Modernizr && Modernizr.csstransforms===true) || (function (){
'use strict';
var div=document.createElement('div').style;
return ('transform' in div || 'WebkitTransform' in div || 'MozTransform' in div || 'msTransform' in div || 'MsTransform' in div || 'OTransform' in div);
})(),
transitions:(window.Modernizr && Modernizr.csstransitions===true) || (function (){
'use strict';
var div=document.createElement('div').style;
return ('transition' in div || 'WebkitTransition' in div || 'MozTransition' in div || 'msTransition' in div || 'MsTransition' in div || 'OTransition' in div);
})(),
classList:(function (){
'use strict';
var div=document.createElement('div');
return 'classList' in div;
})()
},
browser:{
ie8:(function (){
'use strict';
var rv=-1;
if(navigator.appName==='Microsoft Internet Explorer'){
var ua=navigator.userAgent;
var re=new RegExp(/MSIE ([0-9]{1,}[\.0-9]{0,})/);
if(re.exec(ua)!==null)
rv=parseFloat(RegExp.$1);
}
return rv!==-1 && rv < 9;
})(),
ie10:window.navigator.msPointerEnabled,
ie11:window.navigator.pointerEnabled
}};
if(window.jQuery || window.Zepto){
(function ($){
'use strict';
$.fn.swiper=function (params){
var firstInstance;
this.each(function (i){
var that=$(this);
var s=new Swiper(that[0], params);
if(!i) firstInstance=s;
that.data('swiper', s);
});return firstInstance;
};})(window.jQuery || window.Zepto);
}
if(typeof(module)!=='undefined'){
module.exports=Swiper;
} else if(typeof define==='function' && define.amd){
define([], function (){
'use strict';
return Swiper;
});};
//////////////////////////////////////////////////////////////////////////////////
(function ($){
var scripts=document.getElementsByTagName("script");
var last=scripts[scripts.length-1].src.lastIndexOf('/');
var scriptPath=scripts[scripts.length-1].src.slice(0,last);
$(document).ready(function (){
$(".woocommerce .product .thumbnails a.cloud-zoom-gallery").unbind('click');
$('.cloud-zoom, .cloud-zoom-gallery').CloudZoom();
});function format(str){
for (var i=1; i < arguments.length; i++){
str=str.replace('%' + (i - 1), arguments[i]);
}
return str;
}
function CloudZoom(jWin, opts){
var sImg=$('img', jWin);
var img1;
var img2;
var zoomDiv=null;
var $mouseTrap=null;
var lens=null;
var $tint=null;
var softFocus=null;
var $ie6Fix=null;
var zoomImage;
var controlTimer=0;
var cw, ch;
var destU=0;
var destV=0;
var currV=0;
var currU=0;
var filesLoaded=0;
var mx,
my;
var ctx=this, zw;
setTimeout(function (){
if($mouseTrap===null){
var w=jWin.width();
jWin.parent().append(format('Loading...
', w / 3, (w / 2) - (w / 6)));
$('cloud-zoom-loading', jWin.parent()).css('opacity', 0.5)
}}, 200);
var ie6FixRemove=function (){
if($ie6Fix!==null){
$ie6Fix.remove();
$ie6Fix=null;
}};
this.removeBits=function (){
if(lens){
lens.remove();
lens=null;
}
if($tint){
$tint.remove();
$tint=null;
}
if(softFocus){
softFocus.remove();
softFocus=null;
}
ie6FixRemove();
$('.cloud-zoom-loading', jWin.parent()).remove();
};
this.destroy=function (){
jWin.data('zoom', null);
if($mouseTrap){
$mouseTrap.unbind();
$mouseTrap.remove();
$mouseTrap=null;
}
if(zoomDiv){
zoomDiv.remove();
zoomDiv=null;
}
this.removeBits();
};
this.fadedOut=function (){
if(zoomDiv){
zoomDiv.remove();
zoomDiv=null;
}
this.removeBits();
};
this.controlLoop=function (){
if(lens){
var x=(mx - sImg.offset().left - (cw * 0.5)) >> 0;
var y=(my - sImg.offset().top - (ch * 0.5)) >> 0;
if(x < 0){
x=0;
}
else if(x > (sImg.outerWidth() - cw)){
x=(sImg.outerWidth() - cw);
}
if(y < 0){
y=0;
}
else if(y > (sImg.outerHeight() - ch)){
y=(sImg.outerHeight() - ch);
}
lens.css({
left:x,
top:y
});lens.css('background-position', (-x) + 'px ' + (-y) + 'px');
destU=(((x) / sImg.outerWidth()) * zoomImage.width) >> 0;
destV=(((y) / sImg.outerHeight()) * zoomImage.height) >> 0;
currU +=(destU - currU) / opts.smoothMove;
currV +=(destV - currV) / opts.smoothMove;
zoomDiv.css('background-position', (-(currU >> 0) + 'px ') + (-(currV >> 0) + 'px'));
}
controlTimer=setTimeout(function (){
ctx.controlLoop();
}, 30);
};
this.init2=function (img, id){
filesLoaded++;
if(id===1){
zoomImage=img;
}
if(filesLoaded===2){
this.init();
}};
this.init=function (){
$('.cloud-zoom-loading', jWin.parent()).remove();
var $m=$("");
$mouseTrap=jWin.parent().append($m).find(':last');
$mouseTrap=$('.mousetrap',jWin.parent());
$mouseTrap.css({
width:sImg.outerWidth(),
height:sImg.outerHeight(),
top:0,
left:0,
position:'absolute',
zIndex:999
});$mouseTrap.bind('mousemove', this, function (event){
mx=event.pageX;
my=event.pageY;
});$mouseTrap.bind('mouseleave', this, function (event){
clearTimeout(controlTimer);
if(lens){
lens.fadeOut(299);
}
if($tint){
$tint.fadeOut(299);
}
if(softFocus){
softFocus.fadeOut(299);
}
zoomDiv.fadeOut(300, function (){
ctx.fadedOut();
});return false;
});$mouseTrap.bind('mouseenter', this, function (event){
mx=event.pageX;
my=event.pageY;
zw=event.data;
if(zoomDiv){
zoomDiv.stop(true, false);
zoomDiv.remove();
}
var xPos=opts.adjustX,
yPos=opts.adjustY;
var siw=sImg.outerWidth();
var sih=sImg.outerHeight();
var w=opts.zoomWidth;
var h=opts.zoomHeight;
if(opts.zoomWidth=='auto'){
w=siw;
}
if(opts.zoomHeight=='auto'){
h=sih;
}
var appendTo=jWin.parent();
switch (opts.position){
case 'top':
yPos -=h;
break;
case 'right':
xPos +=siw;
break;
case 'bottom':
yPos +=sih;
break;
case 'left':
xPos -=w;
break;
case 'inside':
w=siw;
h=sih;
break;
default:
appendTo=$('#' + opts.position);
if(!appendTo.length){
appendTo=jWin;
xPos +=siw;
yPos +=sih;
}else{
w=appendTo.innerWidth();
h=appendTo.innerHeight();
}}
if(opts.position=='inside'){
zoomDiv=appendTo.append(format('', xPos, yPos, w, h, zoomImage.src)).find(':last');
}else{
zoomDiv=appendTo.append(format('', xPos, yPos-1, w+3, h+2, zoomImage.src)).find(':last');
}
zoomDiv=$('.cloud-zoom-big',appendTo);
if(sImg.attr('title') && opts.showTitle){
zoomDiv.append(format('%0
', sImg.attr('title')));
$('.cloud-zoom-title', zoomDiv).css('opacity', opts.titleOpacity);
}
if($.browser.msie && $.browser.version < 7){
$ie6Fix=$('').css({
position:"absolute",
left:xPos,
top:yPos,
zIndex:99,
width:w,
height:h
}).insertBefore(zoomDiv);
}
zoomDiv.fadeIn(500);
if(lens){
lens.remove();
lens=null;
}
cw=(sImg.outerWidth() / zoomImage.width) * zoomDiv.width();
ch=(sImg.outerHeight() / zoomImage.height) * zoomDiv.height();
lens=jWin.append(format("", cw, ch)).find(':last');
lens=$('.cloud-zoom-lens',jWin);
$mouseTrap.css('cursor', lens.css('cursor'));
var noTrans=false;
if(opts.tint){
lens.css('background', 'url("' + sImg.attr('src') + '")');
$tint=jWin.append(format('', sImg.outerWidth(), sImg.outerHeight(), opts.tint)).find(':last');
$tint=$('.cloud-zoom-tint',jWin);
$tint.css('opacity', opts.tintOpacity);
noTrans=true;
$tint.fadeIn(500);
}
if(opts.softFocus){
lens.css('background', 'url("' + sImg.attr('src') + '")');
jWin.append(format('', sImg.outerWidth() - 2, sImg.outerHeight() - 2, opts.tint));
softFocus=$('.cloud-zoom-soft',jWin);
softFocus.css('background', 'url("' + sImg.attr('src') + '")');
softFocus.css('opacity', 0.5);
noTrans=true;
softFocus.fadeIn(500);
}
if(!noTrans){
lens.css('opacity', opts.lensOpacity);
}
if(opts.position!=='inside'){
lens.fadeIn(500);
}
zw.controlLoop();
return;
});};
img1=new Image();
$(img1).load(function (){
ctx.init2(this, 0);
});img1.src=sImg.attr('src');
img2=new Image();
$(img2).load(function (){
ctx.init2(this, 1);
});img2.src=jWin.attr('href');
}
$.fn.CloudZoom=function (options){
try {
document.execCommand("BackgroundImageCache", false, true);
} catch (e){}
this.each(function (){
var relOpts, opts;
eval('var a={' + $(this).attr('rel') + '}');
relOpts=a;
if($(this).is('.cloud-zoom')){
$(this).css({
'position':'relative',
'display':'block'
});$('img', $(this)).css({
'display':'block'
});if($(this).parent().attr('id')!='wrap'){
$(this).wrap('');
}
opts=$.extend({}, $.fn.CloudZoom.defaults, options);
opts=$.extend({}, opts, relOpts);
$(this).data('zoom', new CloudZoom($(this), opts));
} else if($(this).is('.cloud-zoom-gallery')){
opts=$.extend({}, relOpts, options);
$(this).data('relOpts', opts);
$(this).bind('click', $(this), function (event){
var data=event.data.data('relOpts');
$('#' + data.useZoom).data('zoom').destroy();
$('#' + data.useZoom).attr('href', event.data.attr('href'));
$('#' + data.useZoom + ' img').attr('src', event.data.data('relOpts').smallImage);
$('#' + event.data.data('relOpts').useZoom).CloudZoom();
return false;
});}});return this;
};
$.fn.CloudZoom.defaults={
zoomWidth:'auto',
zoomHeight:'auto',
position:'right',
tint:false,
tintOpacity:0.5,
lensOpacity:0.5,
softFocus:false,
smoothMove:3,
showTitle:true,
titleOpacity:0.5,
adjustX:0,
adjustY:0
};})(jQuery);
!function(a,b){a.MixItUp=function(){var b=this;b._execAction("_constructor",0),a.extend(b,{selectors:{target:".mix",filter:".filter",sort:".sort"},animation:{enable:!0,effects:"fade scale",duration:600,easing:"ease",perspectiveDistance:"3000",perspectiveOrigin:"50% 50%",queue:!0,queueLimit:1,animateChangeLayout:!1,animateResizeContainer:!0,animateResizeTargets:!1,staggerSequence:!1,reverseOut:!1},callbacks:{onMixLoad:!1,onMixStart:!1,onMixBusy:!1,onMixEnd:!1,onMixFail:!1,_user:!1},controls:{enable:!0,live:!1,toggleFilterButtons:!1,toggleLogic:"or",activeClass:"active"},layout:{display:"inline-block",containerClass:"",containerClassFail:"fail"},load:{filter:"all",sort:!1},_$body:null,_$container:null,_$targets:null,_$parent:null,_$sortButtons:null,_$filterButtons:null,_suckMode:!1,_mixing:!1,_sorting:!1,_clicking:!1,_loading:!0,_changingLayout:!1,_changingClass:!1,_changingDisplay:!1,_origOrder:[],_startOrder:[],_newOrder:[],_activeFilter:null,_toggleArray:[],_toggleString:"",_activeSort:"default:asc",_newSort:null,_startHeight:null,_newHeight:null,_incPadding:!0,_newDisplay:null,_newClass:null,_targetsBound:0,_targetsDone:0,_queue:[],_$show:a(),_$hide:a()}),b._execAction("_constructor",1)},a.MixItUp.prototype={constructor:a.MixItUp,_instances:{},_handled:{_filter:{},_sort:{}},_bound:{_filter:{},_sort:{}},_actions:{},_filters:{},extend:function(b){for(var c in b)a.MixItUp.prototype[c]=b[c]},addAction:function(b,c,d,e){a.MixItUp.prototype._addHook("_actions",b,c,d,e)},addFilter:function(b,c,d,e){a.MixItUp.prototype._addHook("_filters",b,c,d,e)},_addHook:function(b,c,d,e,f){var g=a.MixItUp.prototype[b],h={};f=1===f||"post"===f?"post":"pre",h[c]={},h[c][f]={},h[c][f][d]=e,a.extend(!0,g,h)},_init:function(b,c){var d=this;if(d._execAction("_init",0,arguments),c&&a.extend(!0,d,c),d._$body=a("body"),d._domNode=b,d._$container=a(b),d._$container.addClass(d.layout.containerClass),d._id=b.id,d._platformDetect(),d._brake=d._getPrefixedCSS("transition","none"),d._refresh(!0),d._$parent=d._$targets.parent().length?d._$targets.parent():d._$container,d.load.sort&&(d._newSort=d._parseSort(d.load.sort),d._newSortString=d.load.sort,d._activeSort=d.load.sort,d._sort(),d._printSort()),d._activeFilter="all"===d.load.filter?d.selectors.target:"none"===d.load.filter?"":d.load.filter,d.controls.enable&&d._bindHandlers(),d.controls.toggleFilterButtons){d._buildToggleArray();for(var e=0;e-1){var k=d._helpers._camelCase(i.substring(5,i.length));f.dataset[k]=j}}}f.mixParent===b&&(f.mixParent=d._id)}if(d._$targets.length&&a||!d._origOrder.length&&d._$targets.length){d._origOrder=[];for(var e=0;e-1)&&(a(e.selectors.sort).removeClass(e.controls.activeClass),f(c,d),e.sort(g))}if("filter"===d){var h,i=c.attr("data-filter"),j="or"===e.controls.toggleLogic?",":"";e.controls.toggleFilterButtons?(e._buildToggleArray(),c.hasClass(e.controls.activeClass)?(f(c,d,!0),h=e._toggleArray.indexOf(i),e._toggleArray.splice(h,1)):(f(c,d),e._toggleArray.push(i)),e._toggleArray=a.grep(e._toggleArray,function(a){return a}),e._toggleString=e._toggleArray.join(j),e.filter(e._toggleString)):c.hasClass(e.controls.activeClass)||(a(e.selectors.filter).removeClass(e.controls.activeClass),f(c,d),e.filter(i))}e._execAction("_processClick",1,arguments)}else"function"==typeof e.callbacks.onMixBusy&&e.callbacks.onMixBusy.call(e._domNode,e._state,e),e._execAction("_processClickBusy",1,arguments)},_buildToggleArray:function(){var a=this,b=a._activeFilter.replace(/\s/g,"");if(a._execAction("_buildToggleArray",0,arguments),"or"===a.controls.toggleLogic)a._toggleArray=b.split(",");else{a._toggleArray=b.split("."),!a._toggleArray[0]&&a._toggleArray.shift();for(var c,d=0;c=a._toggleArray[d];d++)a._toggleArray[d]="."+c}a._execAction("_buildToggleArray",1,arguments)},_updateControls:function(c,d){var e=this,f={filter:c.filter,sort:c.sort},g=function(a,b){d&&"filter"===h&&"none"!==f.filter&&""!==f.filter?a.filter(b).addClass(e.controls.activeClass):a.removeClass(e.controls.activeClass).filter(b).addClass(e.controls.activeClass)},h="filter",i=null;e._execAction("_updateControls",0,arguments),c.filter===b&&(f.filter=e._activeFilter),c.sort===b&&(f.sort=e._activeSort),f.filter===e.selectors.target&&(f.filter="all");for(var j=0;2>j;j++)i=e.controls.live?a(e.selectors[h]):e["_$"+h+"Buttons"],i&&g(i,"[data-"+h+'="'+f[h]+'"]'),h="sort";e._execAction("_updateControls",1,arguments)},_filter:function(){var b=this;b._execAction("_filter",0);for(var c=0;cg?"asc"===e?-1:1:g>h?"asc"===e?1:-1:g===h&&d._newSort.length>c+1?d._compare(a,b,c+1):0},_printSort:function(a){var b=this,c=a?b._startOrder:b._newOrder,d=b._$parent[0].querySelectorAll(b.selectors.target),e=d.length?d[d.length-1].nextElementSibling:null,f=document.createDocumentFragment();b._execAction("_printSort",0,arguments);for(var g=0;g-1){if(c){var d=a.animation.effects.indexOf(b+"(");if(d>-1){var e=a.animation.effects.substring(d),f=/\(([^)]+)\)/.exec(e),g=f[1];return{val:g}}}return!0}return!1},d=function(a,b){return b?"-"===a.charAt(0)?a.substr(1,a.length):"-"+a:a},e=function(a,e){for(var f=[["scale",".01"],["translateX","20px"],["translateY","20px"],["translateZ","20px"],["rotateX","90deg"],["rotateY","90deg"],["rotateZ","180deg"]],g=0;gi;i++){var j=0===i?j=b._prefix:"";b._ff&&b._ff<=20&&(h[j+"transition-property"]="all",h[j+"transition-timing-function"]=b.animation.easing+"ms",h[j+"transition-duration"]=b.animation.duration+"ms"),h[j+"transition-delay"]=g+"ms",h[j+"transform"]="translate("+f.x+"px,"+f.y+"px)"}(b.effects.transform||b.effects.opacity)&&b._bindTargetDone(e),b._ff&&b._ff<=20?e.css(h):e.css(b.effects.transition).css(h)}for(var c=0;ci;i++){var j=0===i?j=b._prefix:"";k[j+"transition-delay"]=g+"ms",k[j+"transform"]=b.effects.transformOut,k.opacity=b.effects.opacity}e.css(b.effects.transition).css(k),(b.effects.transform||b.effects.opacity)&&b._bindTargetDone(e)}b._execAction("_animateTargets",1)},_bindTargetDone:function(b){var c=this,d=b[0];c._execAction("_bindTargetDone",0,arguments),d.dataset.bound||(d.dataset.bound=!0,c._targetsBound++,b.on("webkitTransitionEnd.mixItUp transitionend.mixItUp",function(e){(e.originalEvent.propertyName.indexOf("transform")>-1||e.originalEvent.propertyName.indexOf("opacity")>-1)&&a(e.originalEvent.target).is(c.selectors.target)&&(b.off(".mixItUp"),delete d.dataset.bound,c._targetDone())})),c._execAction("_bindTargetDone",1,arguments)},_targetDone:function(){var a=this;a._execAction("_targetDone",0),a._targetsDone++,a._targetsDone===a._targetsBound&&a._cleanUp(),a._execAction("_targetDone",1)},_cleanUp:function(){var b=this,c=b.animation.animateResizeTargets?"transform opacity width height margin-bottom margin-right":"transform opacity";unBrake=function(){b._$targets.removeStyle("transition",b._prefix)},b._execAction("_cleanUp",0),b._changingLayout?b._$show.css("display",b._newDisplay):b._$show.css("display",b.layout.display),b._$targets.css(b._brake),b._$targets.removeStyle(c,b._prefix).removeAttr("data-inter-pos-x data-inter-pos-y data-final-pos-x data-final-pos-y data-orig-pos-x data-orig-pos-y data-orig-height data-orig-width data-final-height data-final-width data-inter-width data-inter-height data-orig-margin-right data-orig-margin-bottom data-inter-margin-right data-inter-margin-bottom data-final-margin-right data-final-margin-bottom"),b._$hide.removeStyle("display"),b._$parent.removeStyle("height transition perspective-distance perspective perspective-origin-x perspective-origin-y perspective-origin perspectiveOrigin",b._prefix),b._sorting&&(b._printSort(),b._activeSort=b._newSortString,b._sorting=!1),b._changingLayout&&(b._changingDisplay&&(b.layout.display=b._newDisplay,b._changingDisplay=!1),b._changingClass&&(b._$parent.removeClass(b.layout.containerClass).addClass(b._newClass),b.layout.containerClass=b._newClass,b._changingClass=!1),b._changingLayout=!1),b._refresh(),b._buildState(),b._state.fail&&b._$container.addClass(b.layout.containerClassFail),b._$show=a(),b._$hide=a(),window.requestAnimationFrame&&requestAnimationFrame(unBrake),b._mixing=!1,"function"==typeof b.callbacks._user&&b.callbacks._user.call(b._domNode,b._state,b),"function"==typeof b.callbacks.onMixEnd&&b.callbacks.onMixEnd.call(b._domNode,b._state,b),b._$container.trigger("mixEnd",[b._state,b]),b._state.fail&&("function"==typeof b.callbacks.onMixFail&&b.callbacks.onMixFail.call(b._domNode,b._state,b),b._$container.trigger("mixFail",[b._state,b])),b._loading&&("function"==typeof b.callbacks.onMixLoad&&b.callbacks.onMixLoad.call(b._domNode,b._state,b),b._$container.trigger("mixLoad",[b._state,b])),b._queue.length&&(b._execAction("_queue",0),b.multiMix(b._queue[0][0],b._queue[0][1],b._queue[0][2]),b._queue.splice(0,1)),b._execAction("_cleanUp",1),b._loading=!1},_getPrefixedCSS:function(a,b,c){var d=this,e={};for(i=0;2>i;i++){var f=0===i?d._prefix:"";e[f+a]=c?f+b:b}return d._execFilter("_getPrefixedCSS",e,arguments)},_getDelay:function(a){var b=this,c="function"==typeof b.animation.staggerSequence?b.animation.staggerSequence.call(b._domNode,a,b._state):a,d=b.animation.stagger?c*b.animation.staggerDuration:0;return b._execFilter("_getDelay",d,arguments)},_parseMultiMixArgs:function(a){for(var b=this,c={command:null,animate:b.animation.enable,callback:null},d=0;dg;)h=d[g],g++;return a!==b?a[e]!==b?a[e]:a:void 0};return a?c._execFilter("getOption",d(c,a),arguments):c},setOptions:function(b){var c=this;c._execAction("setOptions",0,arguments),"object"==typeof b&&a.extend(!0,c,b),c._execAction("setOptions",1,arguments)},getState:function(){var a=this;return a._execFilter("getState",a._state,a)},forceRefresh:function(){var a=this;a._refresh(!1,!0)},destroy:function(b){var c=this;c._execAction("destroy",0,arguments),c._$body.add(a(c.selectors.sort)).add(a(c.selectors.filter)).off(".mixItUp");for(var d=0;d1?e:e[0]:c},a.fn.removeStyle=function(c,d){return d=d?d:"",this.each(function(){for(var e=this,f=c.split(" "),g=0;gh;h++){switch(h){case 0:var i=f[g];break;case 1:var i=a.MixItUp.prototype._helpers._camelCase(i);break;case 2:var i=d+f[g];break;case 3:var i=a.MixItUp.prototype._helpers._camelCase(d+f[g])}if(e.style[i]!==b&&"unknown"!=typeof e.style[i]&&e.style[i].length>0&&(e.style[i]=""),!d&&1===h)break}e.attributes&&e.attributes.style&&e.attributes.style!==b&&""===e.attributes.style.value&&e.attributes.removeNamedItem("style")})}}(jQuery);
(function($){
$(document).ready(function(){
'use strict';
var iOS=false,
p=navigator.platform;
if(p==='iPad' || p==='iPhone' || p==='iPod'){
iOS=true;
}
if(iOS){
$('input.button, input[type="text"],input[type="button"],input[type="password"],textarea, input.input-text').css('-webkit-appearance', 'none');
$('input').css('border-radius', '0');
}
function isTouchDevice(){
return true==("ontouchstart" in window || window.DocumentTouch && document instanceof DocumentTouch);
}
if(isTouchDevice()===true){
$("#animations-css").remove();
}
$("select").select2({
allowClear:true,
minimumResultsForSearch:10
});$('.nav > li > a').on('click', function(e){
if($(window).width() < 767){
if($(this).next(".sub-menu").length > 0){
var sm=$(this).next(".sub-menu");
if(sm.data('open')!==1){
e.preventDefault();
e.stopPropagation();
sm.css('display', 'block');
sm.prepend('');
sm.data('open', 1);
$(this).parent().addClass('mobile-submenu-opened');
}}
}});$( document).on("click", ".nav .mega-menu-close", function(e){
$(this).parent().css('display', 'none');
$(this).parent().data('open', 0);
$(this).parent().parent().removeClass('mobile-submenu-opened');
$(this).remove();
});var header_original_height_one=$("header.sticky-header .col-md-12").height();
$(".navbar li.onepage-link-inside a.onepage-link").click(function(){
if($($(this).attr("href")).offset()){
var header_height=header_original_height_one;
var header_add_top=0;
if(header_fixed==0){
header_add_top=header_original_height_one;
}
$("html, body").animate({scrollTop:$($(this).attr("href")).offset().top - header_height - $("#wpadminbar").height() - header_add_top}, 500);
return false;
}});$('.mgt-cta-block').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.mgt-category-image').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.portfolio-item-image').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.mgt-post-image').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.mgt-signup-block').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.vc_row').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.fullwidth-background').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.page-container').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.post-container').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$('.mgt-menu-bg-image').each(function( index){
$(this).attr('style', ($(this).attr('data-style')));
});$(".wpb_column .product-buttons-cart .button").addClass('btn mgt-button mgt-align-center');
$('.woocommerce.widget .product-categories li.cat-parent').prepend('');
$( document).on("click", ".woocommerce.widget .product-categories li.cat-parent:not(.opened) > .cat-menu-close", function(e){
$(this).parent().addClass('opened');
$(this).next().next('ul.children').slideDown();
});$( document).on("click", ".woocommerce.widget .product-categories li.cat-parent.opened > .cat-menu-close", function(e){
$(this).parent().removeClass('opened');
$(this).next().next('ul.children').slideUp();
});$('.woocommerce.widget .product-categories li ul.children li.current-cat').parent().show().parent().addClass('opened').parent().show().parent().addClass('opened');
function magnium_megamenufitwidth(){
if($(window).width() > 767){
$(".mgt-mega-menu:not(.mgt-menu-vertical) .nav > li").mouseenter(function(){
if($(this).children(".sub-menu").length > 0){
var sm=$(this).children(".sub-menu");
sm.css("left", "-15px");
sm.css("right", "auto");
var window_width=parseInt($(window).innerWidth());
var sm_width=parseInt(sm.width());
var sm_offset_left=parseInt(sm.offset().left);
var sm_adjust=window_width - sm_width - sm_offset_left;
if(sm_adjust < 0){
sm.css("left", sm_adjust-30 + "px");
}}
});}}
magnium_megamenufitwidth();
function magnium_adjustVerticalMenu(){
if($(window).width() > 767){
$('.mgt-mega-menu.mgt-menu-vertical .nav > li.menu-item-multicolumn > .sub-menu').css('width', $('.content-block > .container').width() - $('.mgt-mega-menu.mgt-menu-vertical').width());
}}
if($('.mgt-mega-menu.mgt-menu-vertical').length > 0){
magnium_adjustVerticalMenu();
$(window).resize(function (){
magnium_adjustVerticalMenu();
});}
$(".wishlist_table .button.add_to_cart").removeClass("alt");
$(".woocommerce-tabs ul.tabs li a").unbind('click');
$(".woocommerce div.product .woocommerce-tabs ul.tabs li a").click(function(e){
e.preventDefault();
e.stopPropagation();
var current_tab_a=$(this);
var c=current_tab_a.closest(".woocommerce-tabs");
$("ul.tabs li",c).removeClass("active");
$("div.panel").first().addClass("active-content");
$("div.panel.active-content").removeClass("active-content").slideUp();
$("div.panel#tab-reviews").slideUp();
$("div"+current_tab_a.attr("href")).addClass("active-content").slideDown();
current_tab_a.parent().addClass("active");
});var productTabs=$(".woocommerce div.product .woocommerce-tabs.accordion-tabs li");
var productTabsContents=$(".woocommerce div.product .woocommerce-tabs.accordion-tabs .panel");
productTabs.each(function( index){
$(this).after(productTabsContents.get(index));
});$('#product_show_review_form').on('click', function(e){
$(this).slideUp();
$('.woocommerce .shop-product #review_form_wrapper').slideDown();
});$('#blog_show_comment_form').on('click', function(e){
$(this).slideUp();
$('#comments-form-wrapper').slideDown();
});$( ".shop-content .thumbnails").wrapInner('');
$( ".shop-content .thumbnails .swiper-container").wrapInner('');
$( ".shop-content .thumbnails a").wrap('');
$( ".shop-content .thumbnails.horizontal .swiper-container").append('');
$( ".shop-content .thumbnails.horizontal .swiper-container").append('');
$( ".shop-content .thumbnails.vertical").append('');
if(($(".woocommerce-page div.product div.thumbnails.columns-6 .swiper-slide").length > 6) || ($(".woocommerce-page div.product div.thumbnails.columns-5 .swiper-slide").length > 5) || ($(".woocommerce-page div.product div.thumbnails.columns-4 .swiper-slide").length > 4) || ($(".woocommerce-page div.product div.thumbnails.columns-3 .swiper-slide").length > 3)){
$(".woocommerce-page div.product div.thumbnails .swiper-container .swipe-arrow-left, .woocommerce-page div.product div.thumbnails .swiper-container .swipe-arrow-right").show();
}
if(($(".woocommerce-page div.product div.thumbnails.vertical .swiper-slide").length > 3)){
$(".woocommerce-page div.product div.thumbnails.vertical .swipe-arrow-down").show();
}
var productThumbnailsSwiper=$('.woocommerce-page div.product div.thumbnails.horizontal .swiper-container').swiper({
mode:'horizontal',
loop:false,
slidesPerView:'auto',
roundLengths:true,
calculateHeight:true,
onFirstInit:function(){
$( ".shop-content .thumbnails").show();
if($('.cloud-zoom, .cloud-zoom-gallery').data('zoom')){
$('.cloud-zoom, .cloud-zoom-gallery').CloudZoom();
}}
});var productThumbnailsSwiperVertical=$('.woocommerce-page div.product div.thumbnails.vertical .swiper-container').swiper({
mode:'vertical',
loop:true,
slidesPerViewFit:true,
slidesPerView:3,
calculateHeight:false,
onFirstInit:function(){
$( ".shop-content .thumbnails").show();
if($('.cloud-zoom, .cloud-zoom-gallery').data('zoom')){
$('.cloud-zoom, .cloud-zoom-gallery').CloudZoom();
}}
});$(".woocommerce .product .thumbnails a").click(function(e){
e.stopPropagation();
e.preventDefault();
$(".woocommerce .product .thumbnails a").removeClass("active");
$(this).addClass("active");
});$('.shop-content .thumbnails.horizontal .swiper-container .swipe-arrow-left').on('click', function(e){
e.preventDefault();
productThumbnailsSwiper.swipePrev();
})
$('.shop-content .thumbnails.horizontal .swiper-container .swipe-arrow-right').on('click', function(e){
e.preventDefault();
productThumbnailsSwiper.swipeNext();
})
$(".woocommerce .product .thumbnails.vertical .swipe-arrow-down").click(function(e){
e.preventDefault();
productThumbnailsSwiperVertical.swipeNext();
});$(".woocommerce .product .thumbnails a.lightbox").prettyPhoto({hook:"data-rel",show_title:false, social_tools:!1,theme:"pp_woocommerce",horizontal_padding:20,opacity:.8,deeplinking:!1});$(".shop-content .woocommerce-main-image.lightbox").click(function(e){
e.stopPropagation();
e.preventDefault();
if($(".woocommerce .product .thumbnails").length > 0){
if($(".shop-content .woocommerce-main-image.lightbox.variable-image").length > 0){
var variable_image_src=$(".shop-content .woocommerce-main-image.lightbox.variable-image").attr('href');
$.prettyPhoto.open(variable_image_src,'','');
}else{
$(".woocommerce .product .thumbnails .swiper-slide a.lightbox")[$(this).data('counter')-1].click();
}}else{
var single_image_src=$(".shop-content .woocommerce-main-image.lightbox").attr('href');
$.prettyPhoto.open(single_image_src,'','');
}});$(".woocommerce .product .thumbnails a.lightbox").hover(function(e){
e.stopPropagation();
e.preventDefault();
$(".woocommerce .product .thumbnails a").removeClass("active");
$(this).addClass("active");
var attachment_counter=$(this).data('counter');
$(".shop-content .product-main-image-wrapper a").attr("href", $(this).data('zoom-image'));
$(".shop-content .product-main-image-wrapper a img").attr("src", $(this).data('image'));
$(".shop-content .product-main-image-wrapper a").data('counter', attachment_counter);
console.log($(".shop-content .product-main-image-wrapper a").data('counter'));
});var productUpsellsSwiper=$('.product-page-promo-block .upsells-mini .swiper-container').swiper({
mode:'horizontal',
loop:true,
calculateHeight:true,
slidesPerView:1,
onFirstInit:function(){
$( ".product-page-promo-block .upsells-mini").show();
}});$('.product-page-promo-block .upsells-mini .swipe-arrow-left').on('click', function(e){
e.preventDefault();
productUpsellsSwiper.swipePrev();
});$('.product-page-promo-block .upsells-mini .swipe-arrow-right').on('click', function(e){
e.preventDefault();
productUpsellsSwiper.swipeNext();
});var productRelatedSwiper=$('.product-page-promo-block .related-mini .swiper-container').swiper({
mode:'horizontal',
loop:true,
calculateHeight:true,
slidesPerView:1,
onFirstInit:function(){
$( ".product-page-promo-block .related-mini").show();
}});$('.product-page-promo-block .related-mini .swipe-arrow-left').on('click', function(e){
e.preventDefault();
productRelatedSwiper.swipePrev();
});$('.product-page-promo-block .related-mini .swipe-arrow-right').on('click', function(e){
e.preventDefault();
productRelatedSwiper.swipeNext();
});function magnium_offCanvasMenuInit(){
$( ".st-menu").wrapInner('');
$( ".st-menu .nano").wrapInner('');
$(".st-menu .nano").nanoScroller();
$("html").addClass('offcanvasmenu');
var wp_adminbar_height=0;
if($("#wpadminbar").length > 0){
wp_adminbar_height=$("#wpadminbar").height();
}
$("html.offcanvasmenu .st-content-inner").css("margin-top", wp_adminbar_height);
var container=$('#st-container'),
buttons=$("#st-trigger-effects > button"),
eventtype=mobilecheck() ? 'touchstart':'click',
resetMenu=function(){
$(container).removeClass("st-menu-open");
$("html").removeClass('offcanvasmenu-open');
setTimeout( function(){
$('.sg_widget_custom_box_left').fadeIn();
}, 1000);
},
bodyClickFn=function(evt){
if(!hasParentClass( evt.target, 'st-menu')){
resetMenu();
$("html").unbind(eventtype, bodyClickFn);
}
if(hasParentClass( evt.target, 'st-menu-close-btn')){
resetMenu();
$("html").unbind(eventtype, bodyClickFn);
}};
buttons.each(function( i){
var el=$( this);
var effect=el.attr('data-effect');
el.bind(eventtype, function( ev){
ev.stopPropagation();
ev.preventDefault();
container.attr('class', 'st-container');
container.addClass(effect);
$("html").addClass('offcanvasmenu-open');
$('.sg_widget_custom_box_left').fadeOut();
setTimeout( function(){
container.addClass('st-menu-open');
}, 25);
$("html").bind(eventtype, bodyClickFn);
});});
}
function magnium_offCanvasSidebarInit(){
$( ".st-sidebar-menu").wrapInner('');
$( ".st-sidebar-menu .nano").wrapInner('');
$(".st-sidebar-menu .nano").nanoScroller();
$("html").addClass('offcanvassidebar');
var wp_adminbar_height=0;
if($("#wpadminbar").length > 0){
wp_adminbar_height=$("#wpadminbar").height();
}
$("html.offcanvassidebar .st-sidebar-content-inner").css("margin-top", wp_adminbar_height);
var container=$('#st-container'),
buttons=$("#st-sidebar-trigger-effects > a"),
eventtype=mobilecheck() ? 'touchstart':'click',
resetMenu=function(){
$(container).removeClass("st-sidebar-menu-open");
$("html").removeClass('offcanvassidebar-open');
},
bodyClickFn=function(evt){
if(!hasParentClass( evt.target, 'st-sidebar-menu')){
resetMenu();
$("html").unbind(eventtype, bodyClickFn);
}
if(hasParentClass( evt.target, 'st-sidebar-menu-close-btn')){
resetMenu();
$("html").unbind(eventtype, bodyClickFn);
}};
buttons.each(function( i){
var el=$( this);
var effect=el.attr('data-effect');
el.bind(eventtype, function( ev){
ev.stopPropagation();
ev.preventDefault();
container.attr('class', 'st-sidebar-container');
container.addClass(effect);
$("html").addClass('offcanvassidebar-open');
setTimeout( function(){
container.addClass('st-sidebar-menu-open');
}, 25);
$("html").bind(eventtype, bodyClickFn);
});});
}
if($("#st-trigger-effects").length > 0){
$( "body").wrapInner('');
$( ".st-container").wrapInner('');
$( ".st-pusher").wrapInner("");
$( ".st-content").wrapInner("");
$( ".st-menu").insertBefore($(".st-pusher"));
magnium_offCanvasMenuInit();
}
if($("#st-sidebar-trigger-effects").length > 0){
if($("#st-trigger-effects").length > 0){
$("#st-container").addClass("st-sidebar-container");
$(".st-pusher").addClass("st-sidebar-pusher");
$(".st-content").addClass("st-sidebar-content");
$(".st-content-inner").addClass("st-sidebar-content-inner");
$( ".st-sidebar-menu").insertBefore($(".st-sidebar-pusher"));
}else{
$( "body").wrapInner('');
$( ".st-sidebar-container").wrapInner('');
$( ".st-sidebar-pusher").wrapInner("");
$( ".st-sidebar-content").wrapInner("");
$( ".st-sidebar-menu").insertBefore($(".st-sidebar-pusher"));
}
magnium_offCanvasSidebarInit();
}
var wpmlLangOpened=false;
$('.wpml-lang #lang_sel ul li').click(function(){
if(wpmlLangOpened==false){
$('.wpml-lang #lang_sel ul li ul').css('visibility', 'visible');
wpmlLangOpened=true;
}else{
$('.wpml-lang #lang_sel ul li ul').css('visibility', 'hidden');
wpmlLangOpened=false;
}}
);
$(".wpml-lang #lang_sel ul ul").hover(function(){
}, function(){
$('.wpml-lang #lang_sel ul li ul').css('visibility', 'hidden');
wpmlLangOpened=false;
}
);
var toggledSearch=false;
$('.search-bar-toggle input[type="text"],.search-bar-toggle input[type="search"]').val('');
$('.search-bar-toggle input[type="submit"],.search-bar-toggle input[type="button"]').click(function(){
if($('.search-bar-toggle input[type="text"],.search-bar-toggle input[type="search"]').val()==''){
if(toggledSearch==false){
$('.search-bar-toggle input[type="text"],.search-bar-toggle input[type="search"]').fadeIn();
toggledSearch=true;
}else{
$('.search-bar-toggle input[type="text"],.search-bar-toggle input[type="search"]').val('');
$('.search-bar-toggle input[type="text"],.search-bar-toggle input[type="search"]').fadeOut();
toggledSearch=false;
}
return false;
}});if($(window).width() > 767){
$('#mega_main_menu.left ul > li.submenu_full_width > .mega_dropdown').css('width', $('.content-block > .container').width() - $('.main-left-menu-place').width() + 30);
$('#mega_main_menu.left ul > li.submenu_full_width > .mega_dropdown').css('width', $('.content-block > .container-fluid').width() - $('.main-left-menu-place').width() + 30);
}
var menu_hover_link_color='';
var menu_link_color=$(".navbar .nav > li > a").css('color');
var menu_hover_bg='';
$(window).scroll(function (){
var scrollonscreen=$(window).scrollTop() + $(window).height();
if(scrollonscreen > $(window).height() + 350){
$('#top-link').css("bottom", "22px");
}else{
$('#top-link').css("bottom", "-60px");
}});$( '.woocommerce .shop-product .summary div.quantity:not(.buttons_added), .woocommerce .shop-product .summary td.quantity:not(.buttons_added)').addClass('buttons_added').append('').prepend('');
$('.woocommerce .shop-product .summary .input-text.qty').attr('type', '');
$( document).on('click', '.plus, .minus', function(){
var $qty=$( this).closest('.quantity').find('.qty'),
currentVal=parseFloat( $qty.val()),
max=parseFloat( $qty.attr('max')),
min=parseFloat( $qty.attr('min')),
step=$qty.attr('step');
if(! currentVal || currentVal==='' || currentVal==='NaN') currentVal=0;
if(max==='' || max==='NaN') max='';
if(min==='' || min==='NaN') min=0;
if(step==='any' || step==='' || step===undefined || parseFloat( step)==='NaN') step=1;
if($( this).is('.plus')){
if(max && ( max==currentVal || currentVal > max)){
$qty.val(max);
}else{
$qty.val(currentVal + parseFloat( step));
}}else{
if(min && ( min==currentVal || currentVal < min)){
$qty.val(min);
} else if(currentVal > 0){
$qty.val(currentVal - parseFloat( step));
}}
$qty.trigger('change');
});function magnium_stickyHeaderWorker(){
if(isTouchDevice()==false){
var scrolltop=$(document).scrollTop();
if((scrolltop > ($(window).height()/2))){
if((header_hided==1) && (header_fixed=1)){
header_fixed=0;
}
if(header_fixed==0){
header_fixed=1;
$("header.sticky-header").addClass('fixed');
$("header.sticky-header .col-md-12").css("height", 50);
$("header.sticky-header").css("top", -50 + wp_adminbar_height);
$("header.sticky-header").css("top", wp_adminbar_height);
if($("header.sticky-header .mainmenu-belowheader").length > 0){
$(".header-menu-bg").css("margin-bottom", header_original_height+$("header.sticky-header .mainmenu-belowheader").height());
}else{
$(".header-menu-bg").css("margin-bottom", header_original_height);
}}
}else{
if(header_fixed==1){
$("header.sticky-header").css("top", -90 - wp_adminbar_height);
header_hided=1;
if((scrolltop < ($(window).height()/2) -100)){
$("header.sticky-header").removeClass('fixed');
$(".header-menu-bg").css("margin-bottom", 0);
$("header.sticky-header .col-md-12").css("height", header_original_height);
header_fixed=0;
header_hided=0;
}}
}}
}
if($("header.sticky-header").length > 0){
if($(window).width() > 767){
var header_fixed=0;
var header_original_height=$("header.sticky-header .col-md-12").height();
var header_menu_bg_original_height=$(".header-menu-bg").height()
var header_mainmenu_belowheader_height=0;
var wp_adminbar_height=0;
var header_hided=0;
if($("header.sticky-header .mainmenu-belowheader").length > 0){
header_mainmenu_belowheader_height=$("header.sticky-header .mainmenu-belowheader").height();
}else{
header_mainmenu_belowheader_height=0;
}
if($("#wpadminbar").length > 0){
wp_adminbar_height=$("#wpadminbar").height();
}
$("header.sticky-header").css("top", -90 - wp_adminbar_height);
magnium_stickyHeaderWorker();
$(window).scroll(function (){
magnium_stickyHeaderWorker();
});}}
$('#top-link').click(function(){
$('body,html').stop().animate({
scrollTop:0
},800,'easeOutCubic')
return false;
});$(window).resize(function (){
});$( ".post-social-wrapper").hover(function(){
$('.post-social').fadeIn();
}, function(){
$('.post-social').fadeOut();
}
);
function magnium_facebookShare(){
window.open('https://www.facebook.com/sharer/sharer.php?u='+window.location, "facebookWindow", "height=380,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0")
return false;
}
function magnium_googlePlusShare(){
window.open('https://plus.google.com/share?url='+window.location, "googleplusWindow", "height=380,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0")
return false;
}
function magnium_twitterShare(){
if($(".section-title h1").length > 0){
var $page_title=encodeURIComponent($(".portfolio-item-title h1").text());
}else{
var $page_title=encodeURIComponent($(document).find("title").text());
}
window.open('http://twitter.com/intent/tweet?text='+$page_title +' '+window.location, "twitterWindow", "height=370,width=600,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0")
return false;
}
function magnium_pinterestShare(){
var $sharingImg;
if($('#product-main-image').length > 0){
$sharingImg=$('#product-main-image img').first().attr('src');
}
if($('.porftolio-slider li img').length > 0){
$sharingImg=$('.porftolio-slider li img').first().attr('src');
}
if($(".section-title h1").length > 0){
var $page_title=encodeURIComponent($(".portfolio-item-title h1").text());
}else{
var $page_title=encodeURIComponent($(document).find("title").text());
}
window.open('http://pinterest.com/pin/create/button/?url='+window.location+'&media='+$sharingImg+'&description='+$page_title, "pinterestWindow", "height=620,width=600,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0")
return false;
}
if($('a.facebook-share').length > 0 || $('a.twitter-share').length > 0 || $('a.pinterest-share').length > 0 || $('a.googleplus-share').length > 0){
$('.facebook-share').click(magnium_facebookShare);
$('.twitter-share').click(magnium_twitterShare);
$('.pinterest-share').click(magnium_pinterestShare);
$('.googleplus-share').click(magnium_googlePlusShare);
}
function hasParentClass( e, classname){
if(e===document) return false;
if($( e).hasClass(classname)){
return true;
}
if($( e).parents().hasClass(classname)){
return true;
}}
function mobilecheck(){
var check=false;
(function(a){if(/(android|ipad|playbook|silk|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s)|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v)|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v)|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-|)|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4)))check=true})(navigator.userAgent||navigator.vendor||window.opera);
return check;
}});})(jQuery);
(function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=b(e,i,4);var o=!k(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=x(r,e);for(var u=O(t),i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t,r){return function(e,u,i){var o=0,a=O(e);if("number"==typeof i)n>0?o=i>=0?i:Math.max(i+a,o):a=i>=0?Math.min(i+1,a):i+a+1;else if(r&&i&&a)return i=r(e,u),e[i]===u?i:-1;if(u!==u)return i=t(l.call(e,o,a),m.isNaN),i>=0?i+o:-1;for(i=n>0?o:a-1;i>=0&&a>i;i+=n)if(e[i]===u)return i;return-1}}function e(n,t){var r=I.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||a,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=I[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var u=this,i=u._,o=Array.prototype,a=Object.prototype,c=Function.prototype,f=o.push,l=o.slice,s=a.toString,p=a.hasOwnProperty,h=Array.isArray,v=Object.keys,g=c.bind,y=Object.create,d=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):u._=m,m.VERSION="1.8.3";var b=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},x=function(n,t,r){return null==n?m.identity:m.isFunction(n)?b(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return x(n,t,1/0)};var _=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var f=o[c];t&&r[f]!==void 0||(r[f]=i[f])}return r}},j=function(n){if(!m.isObject(n))return{};if(y)return y(n);d.prototype=n;var t=new d;return d.prototype=null,t},w=function(n){return function(t){return null==t?void 0:t[n]}},A=Math.pow(2,53)-1,O=w("length"),k=function(n){var t=O(n);return"number"==typeof t&&t>=0&&A>=t};m.each=m.forEach=function(n,t,r){t=b(t,r);var e,u;if(k(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=k(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=x(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(x(t)),r)},m.every=m.all=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r,e){return k(n)||(n=m.values(n)),("number"!=typeof r||e)&&(r=0),m.indexOf(n,t,r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=k(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(k(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=x(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=x(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=F(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=F(function(n,t,r){n[r]=t}),m.countBy=F(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):k(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:k(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=x(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var S=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=O(n);a>o;o++){var c=n[o];if(k(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=S(c,t,r));var f=0,l=c.length;for(u.length+=l;l>f;)u[i++]=c[f++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return S(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){m.isBoolean(t)||(e=r,r=t,t=!1),null!=r&&(r=x(r,e));for(var u=[],i=[],o=0,a=O(n);a>o;o++){var c=n[o],f=r?r(c,o,n):c;t?(o&&i===f||u.push(c),i=f):r?m.contains(i,f)||(i.push(f),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(S(arguments,!0,!0))},m.intersection=function(n){for(var t=[],r=arguments.length,e=0,u=O(n);u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=S(arguments,!0,!0,1);return m.filter(n,function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,O).length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=O(n);u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=x(r,e,1);for(var u=r(t),i=0,o=O(n);o>i;){var a=Math.floor((i+o)/2);r(n[a])i;i++,n+=r)u[i]=n;return u};var E=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=j(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(g&&n.bind===g)return g.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return E(n,e,t,this,r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var f=m.now();a||r.leading!==!1||(a=f);var l=t-(f-a);return e=this,u=arguments,0>=l||l>t?(o&&(clearTimeout(o),o=null),a=f,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,l)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var f=m.now()-o;t>f&&f>=0?e=setTimeout(c,t-f):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var f=r&&!e;return e||(e=setTimeout(c,t)),f&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];if(v)return v(n);var t=[];for(var r in n)m.has(n,r)&&t.push(r);return M&&e(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var r in n)t.push(r);return M&&e(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=_(m.allKeys),m.extendOwn=m.assign=_(m.keys),m.findKey=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=b(t,r)):(u=S(arguments,!1,!1,1),e=function(n,t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var f=u[a],l=o[f];e(l,f,o)&&(i[f]=l)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(S(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=_(m.allKeys,!0),m.create=function(n,t){var r=j(n);return t&&m.extendOwn(r,t),r},m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=s.call(n);if(u!==s.call(t))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+n==""+t;case"[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case"[object Date]":case"[object Boolean]":return+n===+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!N(n[c],t[c],r,e))return!1}else{var f,l=m.keys(n);if(c=l.length,m.keys(t).length!==c)return!1;for(;c--;)if(f=l[c],!m.has(t,f)||!N(n[f],t[f],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return N(n,t)},m.isEmpty=function(n){return null==n?!0:k(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=h||function(n){return"[object Array]"===s.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(n){m["is"+n]=function(t){return s.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===s.call(n)},m.isNull=function(n){return null===n},m.isUndefined=function(n){return n===void 0},m.has=function(n,t){return null!=n&&p.call(n,t)},m.noConflict=function(){return u._=i,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=w,m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=b(t,r,1);for(var u=0;n>u;u++)e[u]=t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var B={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},T=m.invert(B),R=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=R(B),m.unescape=R(T),m.result=function(n,t,r){var e=null==n?void 0:n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var q=0;m.uniqueId=function(n){var t=++q+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var K=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\u2028|\u2029/g,L=function(n){return"\\"+z[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||K).source,(t.interpolate||K).source,(t.evaluate||K).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(D,L),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=i,a}var c=function(n){return o.call(this,n,m)},f=t.variable||"obj";return c.source="function("+f+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var P=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return f.apply(n,arguments),P(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=o[n];m.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],P(this,r)}}),m.each(["concat","join","slice"],function(n){var t=o[n];m.prototype[n]=function(){return P(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this);